| From: | Dilip Kumar <dilipbalaut(at)gmail(dot)com> |
|---|---|
| To: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> |
| Cc: | vignesh C <vignesh21(at)gmail(dot)com>, Álvaro Herrera <alvherre(at)kurilemu(dot)de>, "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>, "exclusion(at)gmail(dot)com" <exclusion(at)gmail(dot)com>, "pgsql-bugs(at)lists(dot)postgresql(dot)org" <pgsql-bugs(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: BUG #18988: DROP SUBSCRIPTION locks not-yet-accessed database |
| Date: | 2025-08-18 14:21:39 |
| Message-ID: | CAFiTN-vUcOne9RKQCEOMm870Bf9pUhjnyroXmwWvvR2yskta5Q@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On Mon, Aug 18, 2025 at 2:56 PM Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> wrote:
>
> Looks mostly good. How about slightly changing the comment as in attached?
Your suggestion LGTM, I am making back branch patches. I observed
another behavior change in the test in v13. The $sdterr is matching
with error details not with the error code, so for v13 i have to
modify the error comparison string as [1] whereas with other versions
it's like [2]. But if we execute this test from psql then I can see
the same error in v13 as well[3]. Not sure why perl is behaving
differently. Maybe there is a way to change this but I could not
figure it out. And another difference I have noticed is that in v13 I
had to give complete publisher_connstr that's maybe it's not the
starting server on the default port. From this I realized that maybe
for other branches where it is working fine with just dbname, we
should also include publisher_connstr as shown [4] just to ensure we
are connecting to the right node, thoughts?
[1]
+like(
+ $stderr,
+ qr/ERROR: replication slot "regress_sub1" does not exist/,
+ "could not drop replication slot: error message");
[2]
+like(
+ $stderr,
+ qr/ERROR: could not drop replication slot "regress_sub1" on publisher/,
+ "could not drop replication slot: error message");
[3]
postgres[2045257]=# DROP SUBSCRIPTION regress_sub1;
ERROR: XX000: could not drop the replication slot "regress_sub1" on publisher
DETAIL: The error was: ERROR: replication slot "regress_sub1" does not exist
LOCATION: DropSubscription, subscriptioncmds.c:1008
[4]
+$publisher_connstr = $node_publisher->connstr . ' dbname=regress_db';
+$node_publisher->safe_psql(
+ 'postgres', qq(
+ CREATE DATABASE regress_db;
+ CREATE SUBSCRIPTION regress_sub1 CONNECTION '$publisher_connstr'
PUBLICATION regress_pub WITH (connect=false);
+));
Attaching only v13 and head patches, once we have a way forward I will
send other patches as well.
--
Regards,
Dilip Kumar
Google
| Attachment | Content-Type | Size |
|---|---|---|
| v8-0001-Fix-DROP-SUBSCRIPTION-deadlock-with-walsender-pro_head.patch | application/octet-stream | 4.8 KB |
| v8-0001-Fix-DROP-SUBSCRIPTION-deadlock-with-walsender-pro_v13.patch | application/octet-stream | 5.0 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | IVAN HUMANES CABANAS (Fujitsu) | 2025-08-18 14:41:50 | Error pg_upgrade version 11 to 15 |
| Previous Message | Tom Lane | 2025-08-18 14:05:55 | Re: BUG #19023: Table DDL default column expression depending on temp objects |