~/talk

Data Corruption Bugs: Diagnosis and Lessons

Talkat PGConf.dev 2024 · 2024-05-28..05-31· [databases]
links:none on file
slides:none on file

Shows concrete debugging sequences using amcheck and pageinspect to find reproducible corruption, with fixes now merged into core. Demonstrates an interval deduplication bug that returned wrong values, a missing PG_VERSION fsync during CREATE DATABASE/base backup, a btree delete half‑done that produced amcheck false positives, and a GRANT vs CREATE INDEX race that resurrects an index without its missed updates. Explains WAL bisection for narrowing the offending WAL record and lists test and tooling wish‑list items.

AI-written summary · about

  1. 0:00Introduction
  2. 2:36amcheck btree walk-through
  3. 9:16pageinspect
  4. 12:13Defect case studies: pglogical internal
  5. 12:52interval deduplication
  6. 18:01PG_VERSION fsync
  7. 20:26CREATE DATABASE, base backup
  8. 23:13btree delete half-done
  9. 24:50regexp \s changed behavior
  10. 29:25GRANT, CREATE INDEX concurrency
  11. 38:17bisect WAL
  12. 39:13Wish list
  13. 41:57Questions & answers
~/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.