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