Some review comments for v56-0001. ====== Tests not passing?
1. After applying only the v56-0001 patch the regression tests are not passing. It's allowing me to create and move tables within the 'pg_conflict' schema. --- /home/postgres/oss_postgres_misc/src/test/regress/expected/subscription.out 2026-06-25 14:53:56.238126138 +1200 +++ /home/postgres/oss_postgres_misc/src/test/regress/results/subscription.out 2026-06-25 15:04:33.540620498 +1200 @@ -905,15 +905,12 @@ -- Trying to create a new table manually in the pg_conflict namespace -- This should fail as the namespace is reserved for conflict logs tables CREATE TABLE pg_conflict.manual_table (id int); -ERROR: permission denied for schema pg_conflict -LINE 1: CREATE TABLE pg_conflict.manual_table (id int); - ^ -- Moving an existing table into the pg_conflict namespace -- Users should not be able to move their own tables within this namespace CREATE TABLE public.test_move (id int); ALTER TABLE public.test_move SET SCHEMA pg_conflict; -ERROR: permission denied for schema pg_conflict DROP TABLE public.test_move; +ERROR: table "test_move" does not exist SET client_min_messages = WARNING; -- Clean up remaining test subscription ALTER SUBSCRIPTION regress_conflict_log_default DISABLE; @@ -930,6 +927,9 @@ DROP SUBSCRIPTION regress_conflict_protection_test; RESET SESSION AUTHORIZATION; DROP ROLE regress_subscription_user; +ERROR: role "regress_subscription_user" cannot be dropped because some objects depend on it +DETAIL: owner of table pg_conflict.manual_table +owner of table pg_conflict.test_move DROP ROLE regress_subscription_user2; DROP ROLE regress_subscription_user3; DROP ROLE regress_subscription_user_dummy; ====== src/backend/catalog/namespace.c CheckSetNamespace: 2. /* * Common checks on switching namespaces. * - * We complain if either the old or new namespaces is a temporary schema - * (or temporary toast schema), or if either the old or new namespaces is the - * TOAST schema. + * We complain if either the old or new namespaces is a temporary schema, + * temporary toast schema, the TOAST schema, or the conflict schema. */ void CheckSetNamespace(Oid oldNspOid, Oid nspOid) Function comment no longer agrees with function body. Where are the conflict schema errors? ====== src/test/regress/sql/subscription.sql 3. +-- Trying to create a new table manually in the pg_conflict namespace +-- This should fail as the namespace is reserved for conflict logs tables Typo: /conflict logs tables/conflict log tables/ ====== Kind Regards, Peter Smith. Fujitsu Australia
