Re: PITR promote bug: Checkpointer writes to older timeline - Mailing list pgsql-hackers

From Tom Lane
Subject Re: PITR promote bug: Checkpointer writes to older timeline
Date
Msg-id 76666.1624818924@sss.pgh.pa.us
Whole thread Raw
Responses Re: PITR promote bug: Checkpointer writes to older timeline
List pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes:
> I have been working on that over the last couple of days, and applied
> a fix down to 10.  One thing that I did not like in the test was the
> use of compare() to check if the contents of the WAL segment before
> and after the timeline jump remained the same as this would have been
> unstable with any concurrent activity.  Instead, I have added a phase
> at the end of the test with an extra checkpoint and recovery triggered
> once, which is enough to reproduce the PANIC reported at the top of
> the thread.

Buildfarm member hornet just reported a failure in this test:

https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=hornet&dt=2021-06-27%2013%3A40%3A57

the critical bit being

2021-06-27 17:35:46.504 UTC [11862234:1] [unknown] LOG:  connection received: host=[local]
2021-06-27 17:35:46.505 UTC [18350260:12] LOG:  recovering prepared transaction 734 from shared memory
TRAP: FailedAssertion("TransactionIdPrecedesOrEquals(TransactionXmin, RecentXmin)", File: "procarray.c", Line: 2492,
PID:11862234) 
2021-06-27 17:35:46.511 UTC [14876838:4] LOG:  database system is ready to accept connections

It's not clear whether this is a problem with the test case or an
actual server bug, but I'm leaning to the latter theory.  My gut
feel is it's some problem in the "snapshot scalability" work.  It
doesn't look the same as the known open issue, but maybe related?

            regards, tom lane



pgsql-hackers by date:

Previous
From: Tomas Vondra
Date:
Subject: PoC: using sampling to estimate joins / complex conditions
Next
From: Tom Lane
Date:
Subject: Re: PITR promote bug: Checkpointer writes to older timeline