Re: Non-reproducible AIO failure

Konstantin Knizhnik <knizhnik@garret.ru>

From: Konstantin Knizhnik <knizhnik@garret.ru>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: Alexander Lakhin <exclusion@gmail.com>, Andres Freund <andres@anarazel.de>, Nico Williams <nico@cryptonector.com>, Daniel Gustafsson <daniel@yesql.se>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, rmt@lists.postgresql.org
Date: 2025-08-24T18:11:36Z
Lists: pgsql-hackers

Attachments

On 24/08/2025 3:38 PM, Thomas Munro wrote:
> That's also how open source clang 17 compiles it if you rip out the
> bitfield.  I guess if you do that, you won't be able to reproduce
> this, Alexander?  Something like:

I think that we have made this experiment at the very beginning and as 
far as I remembered we were not able to reproduce the problem with 
replaced bitfields. In theory even replacing bitfield with in should not 
avoid race condition, because they are still shared the same cache line.
But practice doesn't confirm it:)


I tried to create small test reproducing this data flow.
But still failed to find and problem with this test.
May be somebody can change this test to be more similar with real AIO 
dataflows?