RE: [PoC] pg_upgrade: allow to upgrade publisher node
Zhijie Hou (Fujitsu) <houzj.fnst@fujitsu.com>
From: "Zhijie Hou (Fujitsu)" <houzj.fnst@fujitsu.com>
To: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>, 'Amit Kapila' <amit.kapila16@gmail.com>
Cc: Dilip Kumar <dilipbalaut@gmail.com>, Peter Smith <smithpb2250@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Bruce Momjian <bruce@momjian.us>, Julien Rouhaud <rjuju123@gmail.com>, vignesh C <vignesh21@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>
Date: 2023-09-18T11:16:41Z
Lists: pgsql-hackers
Attachments
- perf_script.zip (application/x-zip-compressed)
On Friday, September 15, 2023 9:02 PM Kuroda, Hayato/黒田 隼人 <kuroda.hayato@fujitsu.com> wrote: > > Sorry, wrong patch attached. PSA the correct ones. > There is a possibility that XLOG_PARAMETER_CHANGE may be generated, > when GUC parameters are changed just before doing the upgrade. Added to > list. I did some simple performance tests for the patch just to make sure it doesn't introduce obvious overhead, the result looks good to me. I tested two cases: 1) The time for upgrade when the old db has 0, 10,50, 100 slots 0 slots(HEAD) : 0m5.585s 0 slots : 0m5.591s 10 slots : 0m5.602s 50 slots : 0m5.636s 100 slots : 0m5.778s 2) The time for upgrade after doing "upgrade --check" in advance, when the old db has 0, 10,50, 100 slots. 0 slots(HEAD) : 0m5.588s 0 slots : 0m5.596s 10 slots : 0m5.605s 50 slots : 0m5.737s 100 slots : 0m5.783s The data of the local machine I used is: CPU(s): 40 Model name: Intel(R) Xeon(R) Silver 4210 CPU @ 2.20GHz Core(s) per socket: 10 Socket(s): 2 memory: 125GB disk: 6T HDD The old database is empty except for the slots in both tests. The test script is also attached for reference(run perf.sh after adjusting other settings.) Best Regards, Hou zj
Commits
-
Fix issues in binary_upgrade_logical_slot_has_caught_up().
- 0bf62460bb9e 17.0 landed
-
Fix a random failure in 003_logical_slots.pl.
- 63c5df126abb 17.0 landed
-
Fix a test in 003_logical_slots.
- 3e36e48d8efe 17.0 landed
-
Fix uninitialized slot array access during the upgrade.
- a7db71ed2787 17.0 landed
-
Fix the test 003_logical_slots.
- 8af917be6bad 17.0 landed
-
Commit b195e6d482 forgot to update meson.build.
- 8949b978ff49 17.0 landed
-
Use shorter file names in the upgrade logical slots test.
- b195e6d482b8 17.0 landed
-
Migrate logical slots to the new node during an upgrade.
- 29d0a77fa660 17.0 landed
-
Flush logical slots to disk during a shutdown checkpoint if required.
- e0b2eed047df 17.0 landed
-
Prevent possibility of panics during shutdown checkpoint.
- c6c333436491 10.0 cited