forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit8f72bba
committed
Harden nbtree deduplication posting split code.
Add a defensive "can't happen" error to code that handles nbtree postinglist splits (promote an existing assertion). This avoids a segfault inthe event of an insertion of a newitem that is somehow identical to anexisting non-pivot tuple in the index. An nbtree index should neverhave two index tuples with identical TIDs.This scenario is not particular unlikely in the event of any kind ofcorruption that leaves the index in an inconsistent state relative tothe heap relation that is indexed. There are two known reports ofpreventable hard crashes. Doing nothing seems unacceptable given thegeneral expectation that nbtree will cope reasonably well with corruptdata.Discussion:https://postgr.es/m/CAH2-Wz=Jr_d-dOYEEmwz0-ifojVNWho01eAqewfQXgKfoe114w@mail.gmail.comBackpatch: 13-, where nbtree deduplication was introduced.1 parentc3c35a7 commit8f72bba
1 file changed
+13
-1
lines changedLines changed: 13 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1024 | 1024 |
| |
1025 | 1025 |
| |
1026 | 1026 |
| |
1027 |
| - | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
| 1031 | + | |
| 1032 | + | |
| 1033 | + | |
| 1034 | + | |
| 1035 | + | |
| 1036 | + | |
| 1037 | + | |
| 1038 | + | |
| 1039 | + | |
1028 | 1040 |
| |
1029 | 1041 |
| |
1030 | 1042 |
| |
|
0 commit comments
Comments
(0)