Glossary — in plain language

Deduplication (B-tree posting list)

Also called: posting list tuple, _bt_dedup_pass, deduplicate_items

In plain English

When a B-tree leaf fills up with many rows that share the same key value, deduplication (_bt_dedup_pass() in nbtdedup.c, PG13+) merges them into one posting-list tuple: a single copy of the key plus an array of the heap TIDs that have it. Instead of “key, key, key, key” you store “key → [tid1, tid2, tid3, tid4]”.

Why it matters

For low-cardinality indexes (booleans, status flags, foreign keys with few distinct parents) deduplication can shrink the index dramatically and postpone page splits, reducing bloat and I/O. It is on by default (deduplicate_items = on); a REINDEX applies it to an existing index.

Was this helpful?

← Browse the full glossary