> 12 февр. 2021 г., в 01:53, Peter Geoghegan <[email protected]> написал(а): > > On Wed, Jan 13, 2021 at 12:36 AM Heikki Linnakangas > <[email protected]> wrote: >> Add functions to 'pageinspect' to inspect GiST indexes. > > Is gist_page_items() robust with deleted pages? I think that it's > unsafe to assume that deleted pages will have index tuples, since the > page contents will actually be a GISTDeletedPageContents. > > Simplest fix would be to assume maxoff is 0 for the page, perhaps. > Right now we just use PageGetMaxOffsetNumber(), which implicitly > assumes that the page uses slotted tuples with an array of line > pointers (actually it can also deal with a zeroed page, but that's not > relevant here).
Thanks, Peter! I agree that taking PageGetMaxOffsetNumber() seems incorrect for deleted page, because we set pd_lower for the deleted page. Also, there was an idea to add a column for LP_DEAD. As long as we are dealing with deleted data anyway, maybe let's add this column? PFW both patches. Thanks! Best regards, Andrey Borodin.
0001-Prevent-pageinspect-from-using-maxoffset-on-GiST-del.patch
Description: Binary data
0002-Add-bool-column-for-LP_DEAF-flag-to-GiST-pageinspect.patch
Description: Binary data
