~/talk

Fast-path locking improvements in PG18

Talkat PGConf.dev 2025 · 2025-05-13..05-16· [databases]
slides:none on file

Postgres 18 expands fast‑path locking from a fixed 16‑oid per‑backend buffer to any number of 16‑way set‑associative chunks (size tied to max_locks_per_transaction, default 64), cutting shared lock table contention and showing roughly 3× throughput for simple queries and 5× for prepared statements in the presented benchmarks. Implementation shifts cost into memory allocation (glibc malloc) and reveals other limits (join planning, buffer pinning, NUMA), so it works and speeds partitioned/index‑heavy workloads but uncovers the next bottlenecks.

AI-written summary · about

  1. 0:00Introduction and context
  2. 2:39Analyzing the performance issue
  3. 6:15Pinpointing the bottleneck
  4. 9:33Historical fast-path locking
  5. 13:10Designing the new cache
  6. 17:44Performance results and trade-offs
  7. 19:23Remaining challenges
  8. 23:19Future work and conclusions
  9. 25:35Wrap up and final remarks
~/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.