RE: speed up a logical replica setup
Hayato Kuroda (Fujitsu) <kuroda.hayato@fujitsu.com>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
pg_createsubscriber: Remove obsolete comment
- 71795d1cb41b 17.0 landed
- 1330843bb78e 18.0 landed
-
pg_createsubscriber: Fix an unpredictable recovery wait time.
- e5ba6a5ab62c 17.0 landed
- 03b08c8f5f3e 18.0 landed
-
Fix unstable test in 040_pg_createsubscriber.
- ae4e072bad5f 17.0 landed
- 9fd8b331dfe1 18.0 landed
-
Fix the testcase introduced in commit 81d20fbf7a.
- ae395f0f7edb 18.0 landed
- 14387ab06503 17.0 landed
-
Further weaken new pg_createsubscriber test on Windows.
- 55c309fc5b08 17.0 landed
- a1333ec048fb 18.0 landed
-
Temporarily(?) weaken new pg_createsubscriber test on Windows.
- 54508209178b 17.0 landed
-
Make pg_createsubscriber warn if publisher has two-phase commit enabled.
- 917754557cc0 17.0 landed
-
Make pg_createsubscriber more wary about quoting connection parameters.
- b3f5ccebd79d 17.0 landed
-
pg_createsubscriber: Remove failover replication slots on subscriber
- 81d20fbf7a03 17.0 landed
-
pg_createsubscriber: Remove replication slot check on primary
- b96391382626 17.0 landed
-
pg_createsubscriber: Only --recovery-timeout controls the end of recovery process
- 04c8634c0c4d 17.0 landed
-
pg_createsubscriber: creates a new logical replica from a standby server
- d44032d01463 17.0 landed
-
Add some const decorations
- 48018f1d8c12 17.0 landed
-
Add option force_initdb to PostgreSQL::Test::Cluster:init()
- ff9e1e764fcc 17.0 cited
-
Remove MSVC scripts
- 1301c80b2167 17.0 cited
Attachments
- v19-0008-Fix-error-message-for-get_bin_directory.patch (application/octet-stream) patch v19-0008
- v19-0009-Remove-P-and-use-primary_conninfo-instead.patch (application/octet-stream) patch v19-0009
- v19-0001-Creates-a-new-logical-replica-from-a-standby-ser.patch (application/octet-stream) patch v19-0001
- v19-0002-Update-documentation.patch (application/octet-stream) patch v19-0002
- v19-0003-Follow-coding-conversions.patch (application/octet-stream) patch v19-0003
- v19-0004-Fix-argument-for-get_base_conninfo.patch (application/octet-stream) patch v19-0004
- v19-0005-Add-testcase.patch (application/octet-stream) patch v19-0005
- v19-0006-Update-comments-atop-global-variables.patch (application/octet-stream) patch v19-0006
- v19-0007-Address-comments-from-Vignesh.patch (application/octet-stream) patch v19-0007
Dear hackers, Since the original author seems bit busy, I updated the patch set. > > 01. > ``` > /* Options */ > static const char *progname; > > static char *primary_slot_name = NULL; > static bool dry_run = false; > > static bool success = false; > > static LogicalRepInfo *dbinfo; > static int num_dbs = 0; > ``` > > The comment seems out-of-date. There is only one option. Changed the comment to /* Global variables */. > > 02. check_subscriber and check_publisher > > Missing pg_catalog prefix in some lines. This has been already addressed in v18. > 03. get_base_conninfo > > I think dbname would not be set. IIUC, dbname should be a pointer of the pointer. This has been already addressed in v18. > 04. > > I check the coverage and found two functions have been never called: > - drop_subscription > - drop_replication_slot > > Also, some cases were not tested. Below bullet showed notable ones for me. > (Some of them would not be needed based on discussions) > > * -r is specified > * -t is specified > * -P option contains dbname > * -d is not specified > * GUC settings are wrong > * primary_slot_name is specified on the standby > * standby server is not working > > In feature level, we may able to check the server log is surely removed in case > of success. > > So, which tests should be added? drop_subscription() is called only when the > cleanup phase, so it may be difficult to test. According to others, it seems that > -r and -t are not tested. GUC-settings have many test cases so not sure they > should be. Based on this, others can be tested. This has been already addressed in v18. PSA my top-up patch set. V19-0001: same as Euler's patch, v17-0001. V19-0002: Update docs per recent changes. Also, some adjustments were done. V19-0003: Modify the alignment of codes. Mostly same as v18-0002. V19-0004: Change an argument of get_base_conninfo. Same as v18-0003. === experimental patches === V19-0005: Add testcases. Same as v18-0004. V19-0006: Update a comment above global variables. V19-0007: Address comments from Vignesh. V19-0008: Fix error message in get_bin_directory(). V19-0009: Remove -P option. Same as v18-0005. Best Regards, Hayato Kuroda FUJITSU LIMITED https://www.fujitsu.com/