Re: Race condition in recovery?
Dilip Kumar <dilipbalaut@gmail.com>
From: Dilip Kumar <dilipbalaut@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Kyotaro Horiguchi <horikyota.ntt@gmail.com>, hlinnaka <hlinnaka@iki.fi>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-06-09T09:41:59Z
Lists: pgsql-hackers
Attachments
- 9.6-v8-0001-Back-port-a-few-PostgresNode.pm-methods.patch (text/x-patch) patch v8-0001
- 9.6-v8-0002-Fix-corner-case-failure-of-new-standby-to-follow-.patch (text/x-patch) patch v8-0002
- 11-v8-0001-Back-port-backup-param-in-PostgresNode.pm.patch (text/x-patch) patch v8-0001
- 10-v8-0002-Fix-corner-case-failure-of-new-standby-to-follow-.patch (text/x-patch) patch v8-0002
- 10-v8-0001-Back-port-backup-param-in-PostgresNode.pm.patch (text/x-patch) patch v8-0001
- 11-v8-0002-Fix-corner-case-failure-of-new-standby-to-follow-.patch (text/x-patch) patch v8-0002
- 12-v8-0001-Back-port-backup-param-in-PostgresNode.pm.patch (text/x-patch) patch v8-0001
- v7-0001-Fix-corner-case-failure-of-new-standby-to-follow-.patch (text/x-patch) patch v7-0001
On Wed, Jun 9, 2021 at 1:37 PM Dilip Kumar <dilipbalaut@gmail.com> wrote: > > On Wed, Jun 9, 2021 at 12:14 PM Dilip Kumar <dilipbalaut@gmail.com> wrote: > > > > On Wed, Jun 9, 2021 at 2:07 AM Robert Haas <robertmhaas@gmail.com> wrote: > > 2021-06-09 12:11:08.618 IST [122456] LOG: entering standby mode > > 2021-06-09 12:11:08.622 IST [122456] LOG: restored log file "00000002.history" from archive > > cp: cannot stat ‘/home/dilipkumar/work/PG/postgresql/src/test/recovery/tmp_check/t_025_stuck_on_old_timeline_primary_data/archives/000000010000000000000002’: No such file or directory > > 2021-06-09 12:11:08.627 IST [122456] LOG: redo starts at 0/2000028 > > 2021-06-09 12:11:08.627 IST [122456] LOG: consistent recovery state reached at 0/3000000 > > > > Next, I will investigate, without a fix on v11 (maybe v12, v10..) why it is not hitting the defect location at all. And after that, I will check the status on other older versions. > > Reason for the problem was that the "-Xnone" parameter was not > accepted by "sub backup" in PostgresNode.pm so I created that for > backpatch. With attached patches I am to make it pass in v12,v11,v10 > (with fix) and fail (without fix). However, we will have to make some > change for 9.6 because pg_basebackup doesn't support -Xnone on 9.6, > maybe we can delete the content from pg_wal after the backup, if we > think that approach looks fine then I will make the changes for 9.6 as > well. > > Note: for param backport for v12 and v11 same patch getting applied > but for v10 due to some conflict we need a separate patch (both > attached). I have fixed it for 9.6 as well by removing the wal from the xlog directory. Attaching all the patches in single mail to avoid confusion. Note: v7-0001 applies to master, v13,v12 (but for v12 before this we need to apply backport) v12-v8-0001-Backport is same as v11-v8-0001-Backport (duplicated for version wise separation) v11-v8-0002 is same as v10-v8-0002 Basically, for v12 and v11 same backport patch works and for V11 and V10 same main patch works, still I duplicated them to avoid confusion. -- Regards, Dilip Kumar EnterpriseDB: http://www.enterprisedb.com
Commits
-
Further refinement of stuck_on_old_timeline recovery test
- e46f6a078c1a 9.6.23 landed
- 1dc53c914fe8 10.18 landed
- c0a7587807dd 11.13 landed
- fb3d6b0e1aa4 12.8 landed
- d906d106f854 13.4 landed
- 54a5ed220169 14.0 landed
-
Adjust new test case to set wal_keep_segments.
- 6cd0e55f9ffb 9.6.23 landed
- 1c2c6a9a299c 10.18 landed
- 534b9be805b4 11.13 landed
- 2208d71a0099 12.8 landed
-
Adjust new test case to set wal_keep_size.
- 3465328aa19e 13.4 landed
- 4dcb1d087aeb 14.0 landed
-
Fix corner case failure of new standby to follow new primary.
- 6eb5b9ae3917 9.6.23 landed
- 31bda6a22ad1 10.18 landed
- ca158c168ea3 11.13 landed
- 5d950c721d38 12.8 landed
- 082656429215 13.4 landed
- caba8f0d43fb 14.0 landed
-
Back-port a few PostgresNode.pm methods.
- 75212a854f99 9.6.23 landed
-
Allow PostgresNode.pm's backup method to accept backup_options.
- 9778a191a4c0 10.18 landed
- 38982b8b7bd9 11.13 landed
- 6fc2febc28ae 12.8 landed
- 99a0a2ada8c5 13.4 landed
-
Add end-to-end testing of pg_basebackup's tar-format output.
- 081876d75ea1 14.0 cited
-
Allow PostgresNode.pm tests to wait for catchup
- fb093e4cb36f 10.0 cited
-
Delay reading timeline history file until it's fetched from master.
- ee994272ca50 9.3.0 cited