RE: 024_add_drop_pub.pl might fail due to deadlock

From: "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>
To: 'Ajin Cherian' <itsajin(at)gmail(dot)com>
Cc: vignesh C <vignesh21(at)gmail(dot)com>, Alexander Lakhin <exclusion(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
Subject: RE: 024_add_drop_pub.pl might fail due to deadlock
Date: 2025-07-29 12:32:51
Message-ID: OSCPR01MB14966BA12D93C1794FABC3E9EF525A@OSCPR01MB14966.jpnprd01.prod.outlook.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Dear Ajin,

> I have added "Ex functions" for back branches (PG_17 and earlier) ,
> which also have Asserts for making sure locks are taken. For PG_18 and
> HEAD, I've used the extra parameter already_locked.
> PG_14_15-v6-0001-Fix-a-deadlock-during-ALTER-SUBSCRIPTION.-DROP-PU.p
> atch
> is for both PG_14 and PG_15 and
> PG_18_HEAD-v6-0001-Fix-a-possible-deadlock-during-ALTER-SUBSCRIPTION
> is for both PG_18 and HEAD.
>

Thanks for creating the patch!
I feel the existing function here should be the wrapper of Ex function, so attached
patch did not match the expectation. table_open() and table_close() are called
both in UpdateSubscriptionRelState() and UpdateSubscriptionRelStateEx().
Another issue is that the variable "tag" is used by SET_LOCKTAG_OBJECT() even
without the debug build.

How do you feel the .diff file can be applied atop PG17 patch? It is mainly
same as v4 patch but has some assertion.

Best regards,
Hayato Kuroda
FUJITSU LIMITED

Attachment Content-Type Size
kuroda.diffs application/octet-stream 2.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Hayato Kuroda (Fujitsu) 2025-07-29 12:38:22 RE: 024_add_drop_pub.pl might fail due to deadlock
Previous Message Daniel Gustafsson 2025-07-29 12:25:26 Re: encode/decode support for base64url