Re: WIP: parallel GiST index builds - Mailing list pgsql-hackers

From Andrey M. Borodin
Subject Re: WIP: parallel GiST index builds
Date
Msg-id 6D47292A-CC56-4289-9AFA-DA84EF2ABE57@yandex-team.ru
Whole thread Raw
In response to Re: WIP: parallel GiST index builds  (Andreas Karlsson <andreas@proxel.se>)
Responses Re: WIP: parallel GiST index builds
List pgsql-hackers

> On 26 Jul 2024, at 14:30, Andreas Karlsson <andreas@proxel.se> wrote:
>
> I feel the tricky part about doing that is that we need to make sure the fake LSNs are all less than the current real
LSNwhen the index build completes and while that normally should be the case we will have a almost never exercised code
pathfor when the fake LSN becomes bigger than the real LSN which may contain bugs. Is that really worth it to optimize. 
>
> But if we are going to use fake LSN: since the index being built is not visible to any scans we do not have to use
GetFakeLSNForUnloggedRel()but could use an own counter in shared memory in the GISTShared struct for this specific
indexwhich starts at FirstNormalUnloggedLSN. This would give us slightly less contention plus decrease the risk (for
goodand bad) of the fake LSN being larger than the real LSN. 

+1 for atomic counter in GISTShared.
BTW we can just reset LSNs to GistBuildLSN just before doing log_newpage_range().


Best regards, Andrey Borodin.


pgsql-hackers by date:

Previous
From: Alexander Korotkov
Date:
Subject: Re: [PATCH] Improve amcheck to also check UNIQUE constraint in btree index.
Next
From: Dave Cramer
Date:
Subject: Re: Protocol question regarding Portal vs Cursor