~/talk

IPC in PostgreSQL

Talkat PGCon 2023 · 2023-05-30..06-02· [databases]
slides:none on file

Postgres moves from polling and blocking IO toward precise nonblocking wakeups using a check_for_interrupt cooperative hook, shared-memory latches (added 2010) and epoll/kqueue multiplexing; the postmaster refactor in v16 removes risky fork-inside-handler code and the walreceiver stops waking 10×/sec. IPC uses PM signals and proc signals (including a recent proc signal barrier that asks every backend to reach its next interrupt point). Remaining work includes finer-grained interrupt masks and a nonblocking subprocess module to avoid blocking while running archiver/copy programs.

AI-written summary · about

  1. 0:00Introduction
  2. 4:10Hardware
  3. 11:14Common mistakes
  4. 21:14Sleeping system calls
  5. 22:59Latches
  6. 24:14Latch
  7. 31:44PM Signals
  8. 33:44Proc Signals
  9. 35:10Proximal Barrier
  10. 36:27Check for interrupts
  11. 39:25Improvements
  12. 40:15Subprocess module
  13. 41:01Possible changes
  14. 41:18The Unix way
~/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.