~/talk

PostgreSQL queues done right with PgQ

Talkat POSETTE: An Event for Postgres 2026 · 2026-06-16..06-18· [databases]
slides:none on file

Postgres queue PgQ claims to replace SKIP LOCKED designs with a lockless, MVCC-based approach that keeps throughput high and bloat low. It stores events in three rotating child tables, uses a single txid index per child, and defines batches by ticks every second so consumers read transaction-consistent snapshots. A small daemon pgqd (or a pg_cron wrapper) handles retries every 30s and maintenance every 120s, producing zero dead tuples and minimal write overhead.

AI-written summary · about

  1. 0:00Music & introduction
  2. 0:26Agenda: queues, problems, PgQ
  3. 1:15Why use in-database queues
  4. 2:16Naive queue table design
  5. 3:05Consuming with skip locked
  6. 4:03Scaling issues & table bloat
  7. 6:02Visibility timeout workaround
  8. 9:11Partitioning and pointer approach
  9. 11:08PgQ architecture & core concepts
  10. 13:25PgQ API: queues, batches, consumers
  11. 16:49Internals: ticks, batches, MVCC
  12. 20:00Running PgQ on managed cloud
  13. 23:00Replacing pgqd with pg_cron
  14. 26:53Final recap: why PgQ wins
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.