Re: POC and rebased patch for CSN based snapshots - Mailing list pgsql-hackers

From Fujii Masao
Subject Re: POC and rebased patch for CSN based snapshots
Date
Msg-id 4f984e18-bd1f-5632-8af2-313166f0ea8a@oss.nttdata.com
Whole thread Raw
In response to Re: POC and rebased patch for CSN based snapshots  ("movead.li@highgo.ca" <movead.li@highgo.ca>)
List pgsql-hackers

On 2020/07/14 11:02, movead.li@highgo.ca wrote:
> 
>>When checking each tuple visibility, we always have to get the CSN
>>corresponding to XMIN or XMAX from CSN SLRU. In the past discussion,
>>there was the suggestion that CSN should be stored in the tuple header
>>or somewhere (like hint bit) to avoid the overhead by very frequehntly
>>lookup for CSN SLRU. I'm not sure the conclusion of this discussion.
>>But this patch doesn't seem to adopt that idea. So did you confirm that
>>such performance overhead by lookup for CSN SLRU is negligible?
> This patch came from postgrespro's patch which shows a good performance,
> I have simple test on current patch and result no performance decline.

This is good news! When I read the past discussions about CSN, my impression
was that the performance overhead by CSN SLRU lookup might become one of
show-stopper for CSN. So I was worring about this issue...


> And not everytime we do a tuple visibility need lookup forCSN SLRU, only xid
> large than 'TransactionXmin' need that. Maybe we have not touch the case
> which cause bad performance, so it shows good performance temporary.

Yes, we would need more tests in several cases.


>>Of course I know that idea has big issue, i.e., there is no enough space
>>to store CSN in a tuple header if CSN is 64 bits. If CSN is 32 bits, we may
>>be able to replace XMIN or XMAX with CSN corresponding to them. But
>>it means that we have to struggle with one more wraparound issue
>>(CSN wraparound issue). So it's not easy to adopt that idea...
> 
>>Sorry if this was already discussed and concluded...
> I think your point with CSN in tuple header is a exciting approach, but I have
> not seen the discussion, can you show me the discussion address?

Probably you can find the discussion by searching with the keywords
"CSN" and "hint bit". For example,

https://www.postgresql.org/message-id/CAPpHfdv7BMwGv=OfUg3S-jGVFKqHi79pR_ZK1Wsk-13oZ+cy5g@mail.gmail.com

Regards,

-- 
Fujii Masao
Advanced Computing Technology Center
Research and Development Headquarters
NTT DATA CORPORATION



pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Default setting for enable_hashagg_disk
Next
From: Kyotaro Horiguchi
Date:
Subject: Re: Stale external URL in doc?