> On 30 Jul 2024, at 14:57, Tomas Vondra <tomas.von...@enterprisedb.com> wrote:
> 
>> 
>> How do we synchronize Shared Fake LSN with global XLogCtl->unloggedLSN? Just 
>> bump XLogCtl->unloggedLSN if necessary?
>> Perhaps, consider using GetFakeLSNForUnloggedRel() instead of shared 
>> counter? As long as we do not care about FakeLSN>RealLSN.
>> 
> 
> I'm confused. How is this related to unloggedLSN at all?

Parallel build should work for both logged and unlogged indexes.
If we use fake LSN in shared memory, we have to make sure that FakeLSN < 
XLogCtl->unloggedLSN after build.
Either way we can just use XLogCtl->unloggedLSN instead of FakeLSN in shared 
memory.

In other words I propose to use GetFakeLSNForUnloggedRel() instead of 
"pg_atomic_uint64 *fakelsn;”.


Best regards, Andrey Borodin.

Reply via email to