Stop Guessing: Unlocking Wait Events at Scale with Existing and New Tools
October 20–23
Why isn’t wait-event observability as ubiquitous in the Postgres world as it is in other database ecosystems? While wait events provide the definitive "ground truth" for database bottlenecks, capturing them at scale remains notoriously difficult due to sampling data gaps.
In this presentation, we will bridge the gap between high-level database metrics and low-level engine contention. We will start by establishing exactly why wait events are the most powerful diagnostic tool in a DBA's arsenal. By breaking down query latency into specific wait states (such as disk I/O, LWLock contention, or network delays), wait-event analysis shifts troubleshooting from guessing based on vague system symptoms to pinpointing the exact resource constraint holding up your database.
Armed with this understanding, we will explore the mechanics of the Postgres wait event subsystem and existing tools and demonstrate how these states can decisively isolate critical production incidents—such as WAL write bottlenecks and LWLock lock storms—where traditional metrics fall flat.
Moving beyond theory, we will evaluate the architectural limitations of existing observability tooling. To address these gaps, the session will introduce a brand-new open-source tool designed for lightweight, wait events tracing capture, alongside practical usage patterns.
Finally, we will dive into a custom Postgres patch aimed at introducing native wait-event tracing directly into the Postgres core, paving the way for low-overhead, event-driven diagnostic pipelines.