The following bug has been logged on the website:
Bug reference: 18988
Logged by: Alexander Lakhin
Email address: exclusion@gmail.com
PostgreSQL version: 18beta1
Operating system: Ubuntu 24.04
Description:
The following script:
createdb ndb
echo "
CREATE SUBSCRIPTION testsub CONNECTION 'dbname=ndb' PUBLICATION testpub WITH
(connect = false);
" | psql
echo "
DROP SUBSCRIPTION testsub
" | psql &
sleep 1
timeout 30 psql ndb -c "SELECT 1" || echo "TIMEOUT"
makes DROP SUBSCRIPTION stuck on waiting for a connection to drop a slot,
while this connection is waiting for a lock for relation 6100
(pg_subscription), locked by DROP SUBSCRIPTION:
law 1545967 1545946 0 21:10 ? 00:00:00 postgres: law regression
[local] DROP SUBSCRIPTION
law 1545968 1545946 0 21:10 ? 00:00:00 postgres: walsender law
ndb [local] startup waiting
With debug_discard_caches = 1 or under some lucky circumstances (I
encountered these), this leads to inability to connect to any database.
Reproduced on REL_13_STABLE .. master.