Fix handling of non-upgraded B-tree metapages
Teodor Sigaev <teodor@sigaev.ru>
Fix handling of non-upgraded B-tree metapages 857f9c36 bumps B-tree metapage version while upgrade is performed "on the fly" when needed. However, some asserts fired when old version metapage was cached to rel->rd_amcache. Despite new metadata fields are never used from rel->rd_amcache, that needs to be fixed. This patch introduces metadata upgrade during its caching, which fills unavailable fields with their default values. contrib/pageinspect is also patched to handle non-upgraded metapages in the same way. Author: Alexander Korotkov
Files
| Path | Change | +/− |
|---|---|---|
| contrib/pageinspect/btreefuncs.c | modified | +15 −2 |
| src/backend/access/nbtree/nbtpage.c | modified | +41 −6 |