pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.
6+ messages / 1 participants
[nested] [flat]

* pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.
@ 2025-08-01 08:11 Amit Kapila <akapila@postgresql.org>
  0 siblings, 0 replies; 6+ messages in thread

From: Amit Kapila @ 2025-08-01 08:11 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.

A deadlock can occur when the DDL command and the apply worker acquire
catalog locks in different orders while dropping replication origins.

The issue is rare in PG16 and higher branches because, in most cases, the
tablesync worker performs the origin drop in those branches, and its
locking sequence does not conflict with DDL operations.

This patch ensures consistent lock acquisition to prevent such deadlocks.

As per buildfarm.

Reported-by: Alexander Lakhin <exclusion@gmail.com>
Author: Ajin Cherian <itsajin@gmail.com>
Reviewed-by: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Reviewed-by: vignesh C <vignesh21@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Backpatch-through: 14, where it was introduced
Discussion: https://postgr.es/m/bab95e12-6cc5-4ebb-80a8-3e41956aa297@gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/2ab2d6f970584b7ca60cfdf6569336903aa88db5

Modified Files
--------------
src/backend/catalog/pg_subscription.c       | 21 +++++++++++++++---
src/backend/replication/logical/tablesync.c | 34 +++++++++++++++++++++++++----
src/include/catalog/pg_subscription_rel.h   |  2 +-
3 files changed, 49 insertions(+), 8 deletions(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.
@ 2025-08-01 08:11 Amit Kapila <akapila@postgresql.org>
  0 siblings, 0 replies; 6+ messages in thread

From: Amit Kapila @ 2025-08-01 08:11 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.

A deadlock can occur when the DDL command and the apply worker acquire
catalog locks in different orders while dropping replication origins.

The issue is rare in PG16 and higher branches because, in most cases, the
tablesync worker performs the origin drop in those branches, and its
locking sequence does not conflict with DDL operations.

This patch ensures consistent lock acquisition to prevent such deadlocks.

As per buildfarm.

Reported-by: Alexander Lakhin <exclusion@gmail.com>
Author: Ajin Cherian <itsajin@gmail.com>
Reviewed-by: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Reviewed-by: vignesh C <vignesh21@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Backpatch-through: 14, where it was introduced
Discussion: https://postgr.es/m/bab95e12-6cc5-4ebb-80a8-3e41956aa297@gmail.com

Branch
------
REL_18_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/d9f01a287ab1e024f42ec3065036f24dc72066af

Modified Files
--------------
src/backend/catalog/pg_subscription.c       | 21 +++++++++++++++---
src/backend/replication/logical/tablesync.c | 34 +++++++++++++++++++++++++----
src/include/catalog/pg_subscription_rel.h   |  2 +-
3 files changed, 49 insertions(+), 8 deletions(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.
@ 2025-08-01 08:11 Amit Kapila <akapila@postgresql.org>
  0 siblings, 0 replies; 6+ messages in thread

From: Amit Kapila @ 2025-08-01 08:11 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.

A deadlock can occur when the DDL command and the apply worker acquire
catalog locks in different orders while dropping replication origins.

The issue is rare in PG16 and higher branches because, in most cases, the
tablesync worker performs the origin drop in those branches, and its
locking sequence does not conflict with DDL operations.

This patch ensures consistent lock acquisition to prevent such deadlocks.

As per buildfarm.

Reported-by: Alexander Lakhin <exclusion@gmail.com>
Author: Ajin Cherian <itsajin@gmail.com>
Reviewed-by: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Reviewed-by: vignesh C <vignesh21@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Backpatch-through: 14, where it was introduced
Discussion: https://postgr.es/m/bab95e12-6cc5-4ebb-80a8-3e41956aa297@gmail.com

Branch
------
REL_17_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/8c298324a4f3c26138b3d31248e6bd9d627963b5

Modified Files
--------------
src/backend/catalog/pg_subscription.c       | 33 +++++++++++++++++++++++++----
src/backend/replication/logical/tablesync.c | 27 ++++++++++++++++++++---
src/include/catalog/pg_subscription_rel.h   |  2 ++
3 files changed, 55 insertions(+), 7 deletions(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.
@ 2025-08-01 08:11 Amit Kapila <akapila@postgresql.org>
  0 siblings, 0 replies; 6+ messages in thread

From: Amit Kapila @ 2025-08-01 08:11 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.

A deadlock can occur when the DDL command and the apply worker acquire
catalog locks in different orders while dropping replication origins.

The issue is rare in PG16 and higher branches because, in most cases, the
tablesync worker performs the origin drop in those branches, and its
locking sequence does not conflict with DDL operations.

This patch ensures consistent lock acquisition to prevent such deadlocks.

As per buildfarm.

Reported-by: Alexander Lakhin <exclusion@gmail.com>
Author: Ajin Cherian <itsajin@gmail.com>
Reviewed-by: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Reviewed-by: vignesh C <vignesh21@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Backpatch-through: 14, where it was introduced
Discussion: https://postgr.es/m/bab95e12-6cc5-4ebb-80a8-3e41956aa297@gmail.com

Branch
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/adfd8021911a302499187483c93814d24ca5ac44

Modified Files
--------------
src/backend/catalog/pg_subscription.c       | 33 +++++++++++++++++++++++++----
src/backend/replication/logical/tablesync.c | 27 ++++++++++++++++++++---
src/include/catalog/pg_subscription_rel.h   |  2 ++
3 files changed, 55 insertions(+), 7 deletions(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.
@ 2025-08-01 08:11 Amit Kapila <akapila@postgresql.org>
  0 siblings, 0 replies; 6+ messages in thread

From: Amit Kapila @ 2025-08-01 08:11 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.

A deadlock can occur when the DDL command and the apply worker acquire
catalog locks in different orders while dropping replication origins.

The issue is rare in PG16 and higher branches because, in most cases, the
tablesync worker performs the origin drop in those branches, and its
locking sequence does not conflict with DDL operations.

This patch ensures consistent lock acquisition to prevent such deadlocks.

As per buildfarm.

Reported-by: Alexander Lakhin <exclusion@gmail.com>
Author: Ajin Cherian <itsajin@gmail.com>
Reviewed-by: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Reviewed-by: vignesh C <vignesh21@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Backpatch-through: 14, where it was introduced
Discussion: https://postgr.es/m/bab95e12-6cc5-4ebb-80a8-3e41956aa297@gmail.com

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/434d2d147b589206c58b4cdae366f353fe63f4eb

Modified Files
--------------
src/backend/catalog/pg_subscription.c       | 33 +++++++++++++++++++++++++----
src/backend/replication/logical/tablesync.c | 27 ++++++++++++++++++++---
src/include/catalog/pg_subscription_rel.h   |  2 ++
3 files changed, 55 insertions(+), 7 deletions(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.
@ 2025-08-01 08:11 Amit Kapila <akapila@postgresql.org>
  0 siblings, 0 replies; 6+ messages in thread

From: Amit Kapila @ 2025-08-01 08:11 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION.

A deadlock can occur when the DDL command and the apply worker acquire
catalog locks in different orders while dropping replication origins.

The issue is rare in PG16 and higher branches because, in most cases, the
tablesync worker performs the origin drop in those branches, and its
locking sequence does not conflict with DDL operations.

This patch ensures consistent lock acquisition to prevent such deadlocks.

As per buildfarm.

Reported-by: Alexander Lakhin <exclusion@gmail.com>
Author: Ajin Cherian <itsajin@gmail.com>
Reviewed-by: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Reviewed-by: vignesh C <vignesh21@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Backpatch-through: 14, where it was introduced
Discussion: https://postgr.es/m/bab95e12-6cc5-4ebb-80a8-3e41956aa297@gmail.com

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/41fb3f51cb74eca1ba959ccd2fb1c0d7fe0bf11b

Modified Files
--------------
src/backend/catalog/pg_subscription.c       | 33 +++++++++++++++++++++++++----
src/backend/replication/logical/tablesync.c | 27 ++++++++++++++++++++---
src/include/catalog/pg_subscription_rel.h   |  2 ++
3 files changed, 55 insertions(+), 7 deletions(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread


end of thread, other threads:[~2025-08-01 08:11 UTC | newest]

Thread overview: 6+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2025-08-01 08:11 pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION. Amit Kapila <akapila@postgresql.org>
2025-08-01 08:11 pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION. Amit Kapila <akapila@postgresql.org>
2025-08-01 08:11 pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION. Amit Kapila <akapila@postgresql.org>
2025-08-01 08:11 pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION. Amit Kapila <akapila@postgresql.org>
2025-08-01 08:11 pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION. Amit Kapila <akapila@postgresql.org>
2025-08-01 08:11 pgsql: Fix a deadlock during ALTER SUBSCRIPTION ... DROP PUBLICATION. Amit Kapila <akapila@postgresql.org>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox