On Fri, Jan 27, 2023 at 9:30 AM Maxim Orlov <orlo...@gmail.com> wrote:
> I thank you for your advices. I've dived deeper into the problem and I think 
> v2 patch is wrong.

Cool!

> Accessing threshold_timestamp and threshold_xid in 
> TransactionIdLimitedForOldSnapshots
> without lock would lead to an improper xlimit calculation.

That would be a bummer.

> So, my choice would be (3b). My goal is to optimize access to the 
> threshold_timestamp to avoid
> multiple spinlock acquisition on read. In the same time, simultaneous access 
> to these variable
> (threshold_timestamp and threshold_xid) should be protected with spinlock.
>
> I remove atomic for threshold_xid and add comments on mutex_threshold. PFA, 
> v3. I

Interesting, but it's still not entirely clear to me from reading the
comments why we should think that this is safe.

-- 
Robert Haas
EDB: http://www.enterprisedb.com


Reply via email to