Optimize the origin drop functionality.

Amit Kapila <akapila@postgresql.org>

Commit: 3e577ff602fe3438ac60771c4a6d027d881619b0
Author: Amit Kapila <akapila@postgresql.org>
Date: 2023-02-03T02:59:08Z
Releases: 16.0
Optimize the origin drop functionality.

To interlock against concurrent drops, we use to hold ExclusiveLock on
pg_replication_origin till xact commit. This blocks even concurrent drops
of different origins by tablesync workers. So, instead, lock the specific
origin to interlock against concurrent drops.

This reduces the test time variability in src/test/subscription where
multiple tables are being synced.

Author: Vignesh C
Reviewed-by: Hou Zhijie, Amit Kapila
Discussion: https://postgr.es/m/1412708.1674417574@sss.pgh.pa.us

Files

PathChange+/−
src/backend/replication/logical/origin.c modified +33 −29

Discussion