-
- Downloads
Add defenses to btree and hash index AMs to do simple sanity checks
on every index page they read; in particular to catch the case of an all-zero page, which PageHeaderIsValid allows to pass. It turns out hash already had this idea, but it was just Assert()ing things rather than doing a straight error check, and the Asserts were partially redundant with PageHeaderIsValid anyway. Per recent failure example from Jim Nasby. (gist still needs the same treatment.)
Showing
- src/backend/access/hash/hash.c 4 additions, 4 deletionssrc/backend/access/hash/hash.c
- src/backend/access/hash/hashinsert.c 5 additions, 5 deletionssrc/backend/access/hash/hashinsert.c
- src/backend/access/hash/hashovfl.c 13 additions, 13 deletionssrc/backend/access/hash/hashovfl.c
- src/backend/access/hash/hashpage.c 14 additions, 12 deletionssrc/backend/access/hash/hashpage.c
- src/backend/access/hash/hashsearch.c 8 additions, 8 deletionssrc/backend/access/hash/hashsearch.c
- src/backend/access/hash/hashutil.c 44 additions, 23 deletionssrc/backend/access/hash/hashutil.c
- src/backend/access/nbtree/nbtinsert.c 2 additions, 2 deletionssrc/backend/access/nbtree/nbtinsert.c
- src/backend/access/nbtree/nbtpage.c 41 additions, 5 deletionssrc/backend/access/nbtree/nbtpage.c
- src/backend/access/nbtree/nbtree.c 12 additions, 4 deletionssrc/backend/access/nbtree/nbtree.c
- src/include/access/hash.h 2 additions, 2 deletionssrc/include/access/hash.h
- src/include/access/nbtree.h 2 additions, 1 deletionsrc/include/access/nbtree.h
Loading
Please register or sign in to comment