On Tue, Dec 11, 2018 at 1:50 AM Alexander Korotkov <aekorot...@gmail.com> wrote: > On Sun, Dec 9, 2018 at 10:25 PM Alexander Korotkov <aekorot...@gmail.com> > wrote: > > On Sat, Dec 8, 2018 at 12:48 PM Andrey Borodin <x4...@yandex-team.ru> wrote: > > > > 8 дек. 2018 г., в 6:54, Alexander Korotkov <aekorot...@gmail.com> > > > > написал(а): > > > > > > > > Yep, please find attached draft patch. > > > > > > Patch seems good to me, I'll check it in more detail. > > > The patch gets posting item at FirstOffsetNumber instead of > > > btree->getLeftMostChild(). This seem OK, since dataGetLeftMostPage() is > > > doing just the same, but with few Assert()s. > > > > I'd like to evade creating GinBtree for just calling > > getLeftMostChild(). Also, few more places in ginvacuum.c do the same. > > We have the same amount of Assert()s in ginVacuumPostingTreeLeaves(). > > So, let's keep it uniform. > > > > I would also like Peter Geoghegan to take a look at this patch before > > committing it. > > I've slightly adjusted commit message. I'm going to commit this fix > if no objections.
Please also find patch changing lock order in ginRedoDeletePage() preventing deadlock on standby. I'm going to commit it too. ------ Alexander Korotkov Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
gin-redo-delete-page-locking-order-1.patch
Description: Binary data