Re: Refactor pg_rewind code and make it work against a standby
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Heikki Linnakangas <hlinnaka@iki.fi>
Cc: Soumyadeep Chakraborty <soumyadeep2007@gmail.com>,
Kyotaro Horiguchi <horikyota.ntt@gmail.com>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-11-15T06:48:20Z
Lists: pgsql-hackers
Not sure if you noticed, but piculet has twice failed the 007_standby_source.pl test that was added by 9c4f5192f: https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=piculet&dt=2020-11-15%2006%3A00%3A11 https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=piculet&dt=2020-11-13%2011%3A20%3A10 and francolin failed once: https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=francolin&dt=2020-11-12%2018%3A57%3A33 These failures look the same: # Failed test 'table content after rewind and insert: query result matches' # at t/007_standby_source.pl line 160. # got: 'in A # in A, before promotion # in A, after C was promoted # ' # expected: 'in A # in A, before promotion # in A, after C was promoted # in A, after rewind # ' # Looks like you failed 1 test of 3. [11:27:01] t/007_standby_source.pl ... Dubious, test returned 1 (wstat 256, 0x100) Failed 1/3 subtests Now, I'm not sure what to make of that, but I can't help noticing that piculet uses --disable-atomics while francolin uses --disable-spinlocks. That leads the mind towards some kind of low-level synchronization bug ... regards, tom lane
Commits
-
Make pg_rewind test case more stable.
- c71f9a094b32 14.0 landed
-
Fix timing issue in pg_rewind test.
- 39f9f04b5784 14.0 landed
-
Allow pg_rewind to use a standby server as the source system.
- 9c4f5192f69e 14.0 landed
-
pg_rewind: Refactor the abstraction to fetch from local/libpq source.
- 37d2ff380312 14.0 landed
-
pg_rewind: Replace the hybrid list+array data structure with simplehash.
- f81e97d0475c 14.0 landed
-
Refactor pg_rewind for more clear decision making.
- eb00f1d4bf96 14.0 landed
-
pg_rewind: Move syncTargetDirectory() to file_ops.c
- ffb4e27e9c5e 14.0 landed