~/talk

PostgreSQL 17 vs 18: Side‑by‑Side Performance Wins in Real‑World Queries

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

Identical Azure VMs run Postgres 17 and 18 with EXPLAIN ANALYZE, seven measured runs and one warmup so timings are cache‑hot; results show concrete wins: a 43% cut in OR‑chain queries, a B-tree skip scan turning 121 ms into 0.07 ms (≈1,741×), self‑join elimination reducing 6.29 ms to 1.28 ms (≈5×) enabled by enable_self_join_elimination, GROUP‑BY pruning on unique indexes cutting 13 ms to 0.05 ms, and a 1.5× faster EXCEPT via cleaned hash set execution.

AI-written summary · about

  1. 0:00Music & introduction
  2. 0:32Test setup and fair comparison methodology
  3. 1:48Realistic datasets and workload modeling
  4. 2:33Or-to-any transformation and query speedups
  5. 6:18B-tree skip scan: huge gains on composite indexes
  6. 13:02Self-join elimination in ORM-generated queries
  7. 17:39Smarter group by pruning with unique indexes
  8. 20:01Faster EXCEPT queries and cleaner execution plans
  9. 23:08Summary of 5 major performance improvements in PG 18
  10. 25:01When upgrading to Postgres 18 makes sense
~/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.