Fix one more portability shortcoming in new test_pg_dump test.
authorTom Lane <[email protected]>
Tue, 30 Apr 2024 14:45:14 +0000 (10:45 -0400)
committerTom Lane <[email protected]>
Tue, 30 Apr 2024 14:45:14 +0000 (10:45 -0400)
If the bootstrap superuser's name requires quoting, regroleout
will supply double quotes ... but the result of CURRENT_USER
is just the literal name.  Apply quote_ident() to ensure a match.

Per Andrew Dunstan's off-list investigation of buildfarm member
prion's failures.

src/test/modules/test_pg_dump/expected/test_pg_dump.out
src/test/modules/test_pg_dump/sql/test_pg_dump.sql

index e8121f6bfd018a315c0fd3bdf1841f1a3586c59c..bda1c6b3c2a3c55788d970f87a332495157172be 100644 (file)
@@ -64,9 +64,9 @@ GRANT USAGE ON SCHEMA test_pg_dump_s1 TO regress_dump_test_role;
 GRANT USAGE ON TYPE test_pg_dump_e1 TO regress_dump_test_role;
 -- Substitute for current user's name to keep test output consistent
 SELECT s.obj,
-  CASE WHEN a.grantor::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantor::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantor::regrole::name END,
-  CASE WHEN a.grantee::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantee::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantee::regrole::name END,
   a.privilege_type, a.is_grantable
 FROM
@@ -201,9 +201,9 @@ ALTER EXTENSION test_pg_dump DROP VIEW test_pg_dump_v1;
 DROP OWNED BY regress_dump_test_role RESTRICT;
 -- Substitute for current user's name to keep test output consistent
 SELECT s.obj,
-  CASE WHEN a.grantor::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantor::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantor::regrole::name END,
-  CASE WHEN a.grantee::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantee::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantee::regrole::name END,
   a.privilege_type, a.is_grantable
 FROM
index 4598531ce7fb72d6032e377b51fa07c8da593654..a56a945104d219086807c4e677332202ee64f86b 100644 (file)
@@ -77,9 +77,9 @@ GRANT USAGE ON TYPE test_pg_dump_e1 TO regress_dump_test_role;
 
 -- Substitute for current user's name to keep test output consistent
 SELECT s.obj,
-  CASE WHEN a.grantor::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantor::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantor::regrole::name END,
-  CASE WHEN a.grantee::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantee::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantee::regrole::name END,
   a.privilege_type, a.is_grantable
 FROM
@@ -129,9 +129,9 @@ DROP OWNED BY regress_dump_test_role RESTRICT;
 
 -- Substitute for current user's name to keep test output consistent
 SELECT s.obj,
-  CASE WHEN a.grantor::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantor::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantor::regrole::name END,
-  CASE WHEN a.grantee::regrole::name = current_user THEN 'postgres'
+  CASE WHEN a.grantee::regrole::name = quote_ident(current_user) THEN 'postgres'
     ELSE a.grantee::regrole::name END,
   a.privilege_type, a.is_grantable
 FROM