]> granicus.if.org Git - postgresql/commit
Make btree index structure adjustments and WAL logging changes needed to
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 21 Feb 2003 00:06:22 +0000 (00:06 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 21 Feb 2003 00:06:22 +0000 (00:06 +0000)
commit70508ba7aed76954b7e630a4952e1360c15db830
tree5e688d748e5a183a1248153203ff8ededfd020a8
parent4df0f1d26f62e835bb357fa7c2e3d5de5fcbf802
Make btree index structure adjustments and WAL logging changes needed to
support btree compaction, as per proposal of a few days ago.  btree index
pages no longer store parent links, instead they have a level indicator
(counting up from zero for leaf pages).  The FixBTree recovery logic is
removed, and replaced by code that detects missing parent-level insertions
during WAL replay.  Also, generate appropriate WAL entries when updating
btree metapage and when building a btree index from scratch.  I believe
btree indexes are now completely WAL-legal for the first time.
initdb forced due to index and WAL changes.
13 files changed:
src/backend/access/nbtree/Makefile
src/backend/access/nbtree/README
src/backend/access/nbtree/nbtinsert.c
src/backend/access/nbtree/nbtpage.c
src/backend/access/nbtree/nbtree.c
src/backend/access/nbtree/nbtsearch.c
src/backend/access/nbtree/nbtsort.c
src/backend/access/nbtree/nbtxlog.c [new file with mode: 0644]
src/backend/access/transam/rmgr.c
src/backend/access/transam/xlog.c
src/include/access/nbtree.h
src/include/access/xlog.h
src/include/catalog/catversion.h