Re: Parallel scan with SubTransGetTopmostTransaction assert coredump - Mailing list pgsql-hackers

From Pavel Borisov
Subject Re: Parallel scan with SubTransGetTopmostTransaction assert coredump
Date
Msg-id CALT9ZEHvwRmp=7V+8A2W9-W5wguEdQnpXF0JnMLqrhmhcS1GXg@mail.gmail.com
Whole thread Raw
In response to Re: Parallel scan with SubTransGetTopmostTransaction assert coredump  (Greg Nancarrow <gregn4422@gmail.com>)
Responses Re: Parallel scan with SubTransGetTopmostTransaction assert coredump
List pgsql-hackers
ср, 4 авг. 2021 г. в 14:18, Greg Nancarrow <gregn4422@gmail.com>:
On Wed, Aug 4, 2021 at 7:55 PM Pavel Borisov <pashkin.elfe@gmail.com> wrote:
>
>>
> Greg, thanks for the fast response! I suppose that a check for IsolationUsesXactSnapshot() is also useful in a GetTransactionSnapshot for the correct processing of a case with NULL transaction snapshot.
> This corrects mentioned check-world test.
> PFA v7 patch.

Ah, thanks for that (I didn't debug that failure).
But is the coredump issue reproducible now? (using v7 and your test script)

Now I've run my test script attached above in the thread on v6 and v7 and quite soon got crashes with the Assert and a backtrace identical to the original one. So it may be useful for further development, but now it is not enough to fix the original crash.

And the same script run on v2/v5 patch was completed without crash at every isolation level, I've tested i.e. READ COMMITTED, REPEATABLE READ and SERIALIZABLE. If I remember correctly none of us could demonstrate any errors with REPEATABLE READ and SERIALIZABLE on v2/v5. That fact was the base of my proposal to commit v2/v5 i.e. to fix the obvious bug and let the further improvements (if any) be potentially done later.

At SERIALIZABLE level with v2/v5 I get an error which I don't have before the patch (but no crash):
pgbench: error: client 6 script 0 aborted in command 594 query 0: ERROR:  could not serialize access due to read/write dependencies among transactions
DETAIL:  Reason code: Canceled on identification as a pivot, during conflict out checking.


pgsql-hackers by date:

Previous
From: Greg Nancarrow
Date:
Subject: Re: Parallel scan with SubTransGetTopmostTransaction assert coredump
Next
From: Pavel Borisov
Date:
Subject: Re: Parallel scan with SubTransGetTopmostTransaction assert coredump