Re: BUG #17116: Assert failed in SerialSetActiveSerXmin() on commit of parallelized serializable transaction
Thomas Munro <thomas.munro@gmail.com>
From: Thomas Munro <thomas.munro@gmail.com>
To: Alexander Lakhin <exclusion@gmail.com>
Cc: PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Date: 2021-07-29T21:41:33Z
Lists: pgsql-bugs
On Wed, Jul 28, 2021 at 5:02 PM Thomas Munro <thomas.munro@gmail.com> wrote: > On Wed, Jul 28, 2021 at 9:00 AM Alexander Lakhin <exclusion@gmail.com> wrote: > > (Except for read-only-anomaly-3, that causes another > > assertion fail but I believe that it's not related to the initial issue > > and deserves another bug report.) > > Huh. I tried and failed to find that one with concurrent runs. I'll > wait for your next report before I do anything, just in case there's a > connection. This is indeed an unrelated issue, and much older. After many kilowatt hours, I reproduced it here and worked out that it comes from GetSafeSnapshot() not expecting possibleUnsafeConflicts to be empty when WritableSxactCount == 0. More soon.
Commits
-
Fix race in SERIALIZABLE READ ONLY.
- d1c0f81e7273 11.20 landed
- e30fd0942493 12.15 landed
- ae632f7a3147 13.11 landed
- d811d74be353 14.8 landed
- af397c6c27b7 15.3 landed
- 65e388d4182a 16.0 landed
-
Fix assert failures in parallel SERIALIZABLE READ ONLY.
- afa122e41c65 12.15 landed
- a0f55fc86ab7 13.11 landed
- e9051ecd58e9 14.8 landed
- 055990904a17 15.3 landed
- 47c0accbe05b 16.0 landed
-
Fix SxactGlobalXmin tracking.
- 47a338cfcd67 12.0 cited
-
There's a small window wherein a transaction is committed but not yet
- bdaabb9b22ca 9.2.0 cited