]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Fix REASSIGN OWNED for subscriptions in other databases.
authorJeff Davis <jdavis@postgresql.org>
Sat, 18 Jul 2026 16:22:40 +0000 (09:22 -0700)
committerJeff Davis <jdavis@postgresql.org>
Sat, 18 Jul 2026 16:22:52 +0000 (09:22 -0700)
commite727c6f2ef5c75a282fbef9cb8adc0c1c6c7978e
tree1c2b846950c1356e9144cb2e3501c2751a3f5acb
parentfd27c7e64fe0d5d514ee5fa97250327ce33756fa
Fix REASSIGN OWNED for subscriptions in other databases.

Subscription objects are conceptually database-local objects, but
pg_subscription is a shared catalog so that the launcher process can
scan it.

Check readers of pg_subscription to ensure that, unless it's the
launcher process, it filters by MyDatabaseId. Most readers were
already doing so, but this commit fixes REASSIGN OWNED and adds guards
to catch other problems in the future. Also, clarify documentation.

Author: Dilip Kumar <dilipbalaut@gmail.com>
Reported-by: Noah Misch <noah@leadboat.com>
Reviewed-by: shveta malik <shveta.malik@gmail.com>
Discussion: https://postgr.es/m/20260710192533.4f.noahmisch@microsoft.com
Backpatch-through: 19
contrib/postgres_fdw/t/010_subscription.pl
doc/src/sgml/ref/reassign_owned.sgml
doc/src/sgml/user-manag.sgml
src/backend/catalog/pg_subscription.c
src/backend/commands/subscriptioncmds.c