On Tue, Jul 8, 2025 at 8:41 PM Ajin Cherian <itsa...@gmail.com> wrote:
> Proposed fix: > In process_syncing_tables_for_apply(), acquire an AccessExclusiveLock > on SubscriptionRelRelationId before acquiring the lock on > ReplicationOriginRelationId. > > Patch with fix attached. > I'll continue investigating whether this issue also affects HEAD. While debugging this further, I found that there is another lock taken prior to this in AlterSubscription(), /* Lock the subscription so nobody else can do anything with it. */ LockSharedObject(SubscriptionRelationId, subid, 0, AccessExclusiveLock); Since this is the first lock taken while altering subscription, that should also be taken first by the tablesync worker to avoid deadlock. So, attaching a modified patch. regards, Ajin Cherian Fujitsu Australia
0002-Fix-a-deadlock-during-ALTER-SUBSCRIPTION-.-DROP-PUBL.patch
Description: Binary data