This is an automated email from the ASF dual-hosted git repository.

chenjinbao1989 pushed a commit to branch cbdb-postgres-merge
in repository https://gitbox.apache.org/repos/asf/cloudberry.git


The following commit(s) were added to refs/heads/cbdb-postgres-merge by this 
push:
     new 015d032cf11 Dispatch oids on GrantRole
015d032cf11 is described below

commit 015d032cf112a150a0c464dfbcd87d938bde35f6
Author: Jinbao Chen <[email protected]>
AuthorDate: Sun Nov 23 12:27:27 2025 +0800

    Dispatch oids on GrantRole
---
 src/backend/commands/user.c              |  2 +-
 src/test/regress/expected/privileges.out | 51 ++++++++++----------------------
 2 files changed, 16 insertions(+), 37 deletions(-)

diff --git a/src/backend/commands/user.c b/src/backend/commands/user.c
index ae5f86b4c0c..2b7b16d9d95 100644
--- a/src/backend/commands/user.c
+++ b/src/backend/commands/user.c
@@ -2650,7 +2650,7 @@ GrantRole(ParseState *pstate, GrantRoleStmt *stmt)
                                                                        
DF_CANCEL_ON_ERROR|
                                                                        
DF_WITH_SNAPSHOT|
                                                                        
DF_NEED_TWO_PHASE,
-                                                                       NIL,
+                                                                       
GetAssignedOidsForDispatch(),
                                                                        NULL);
 }
 
diff --git a/src/test/regress/expected/privileges.out 
b/src/test/regress/expected/privileges.out
index 2e461f362e4..eb8655c3b43 100644
--- a/src/test/regress/expected/privileges.out
+++ b/src/test/regress/expected/privileges.out
@@ -42,9 +42,7 @@ CREATE USER regress_priv_user5;       -- duplicate
 ERROR:  role "regress_priv_user5" already exists
 CREATE USER regress_priv_user6;
 CREATE USER regress_priv_user7;
-<<<<<<< HEAD
 CREATE ROLE regress_priv_role;
-=======
 CREATE USER regress_priv_user8;
 CREATE USER regress_priv_user9;
 CREATE USER regress_priv_user10;
@@ -129,7 +127,6 @@ CREATE USER regress_priv_user2;
 CREATE USER regress_priv_user3;
 CREATE USER regress_priv_user4;
 CREATE USER regress_priv_user5;
->>>>>>> REL_16_9
 GRANT pg_read_all_data TO regress_priv_user6;
 GRANT pg_write_all_data TO regress_priv_user7;
 GRANT pg_read_all_settings TO regress_priv_user8 WITH ADMIN OPTION;
@@ -259,11 +256,6 @@ CREATE FUNCTION leak(integer,integer) RETURNS boolean
   LANGUAGE internal IMMUTABLE STRICT;  -- but deliberately not LEAKPROOF
 ALTER FUNCTION leak(integer,integer) OWNER TO regress_priv_user1;
 -- test owner privileges
-<<<<<<< HEAD
-GRANT regress_priv_role TO regress_priv_user1 WITH ADMIN OPTION GRANTED BY 
CURRENT_ROLE;
-REVOKE ADMIN OPTION FOR regress_priv_role FROM regress_priv_user1 GRANTED BY 
foo; -- error
-REVOKE ADMIN OPTION FOR regress_priv_role FROM regress_priv_user1 GRANTED BY 
regress_priv_user2; -- error
-=======
 GRANT regress_priv_role TO regress_priv_user1 WITH ADMIN OPTION GRANTED BY 
regress_priv_role; -- error, doesn't have ADMIN OPTION
 ERROR:  permission denied to grant privileges as role "regress_priv_role"
 DETAIL:  The grantor must have the ADMIN option on role "regress_priv_role".
@@ -272,7 +264,6 @@ REVOKE ADMIN OPTION FOR regress_priv_role FROM 
regress_priv_user1 GRANTED BY foo
 ERROR:  role "foo" does not exist
 REVOKE ADMIN OPTION FOR regress_priv_role FROM regress_priv_user1 GRANTED BY 
regress_priv_user2; -- warning, noop
 WARNING:  role "regress_priv_user1" has not been granted membership in role 
"regress_priv_role" by role "regress_priv_user2"
->>>>>>> REL_16_9
 REVOKE ADMIN OPTION FOR regress_priv_role FROM regress_priv_user1 GRANTED BY 
CURRENT_USER;
 REVOKE regress_priv_role FROM regress_priv_user1 GRANTED BY CURRENT_ROLE;
 DROP ROLE regress_priv_role;
@@ -1877,20 +1868,12 @@ CREATE INDEX sro_idx ON sro_tab ((sro_ifun(a) + 
sro_ifun(0)))
        WHERE sro_ifun(a + 10) > sro_ifun(10);
 DROP INDEX sro_idx;
 -- Do the same concurrently
-<<<<<<< HEAD
 CREATE INDEX sro_idx ON sro_tab ((sro_ifun(a) + sro_ifun(0)))
-=======
-CREATE INDEX CONCURRENTLY sro_idx ON sro_tab ((sro_ifun(a) + sro_ifun(0)))
->>>>>>> REL_16_9
        WHERE sro_ifun(a + 10) > sro_ifun(10);
 -- REINDEX
 REINDEX TABLE sro_tab;
 REINDEX INDEX sro_idx;
-<<<<<<< HEAD
 REINDEX TABLE sro_tab;
-=======
-REINDEX TABLE CONCURRENTLY sro_tab;
->>>>>>> REL_16_9
 DROP INDEX sro_idx;
 -- CLUSTER
 CREATE INDEX sro_cluster_idx ON sro_tab ((sro_ifun(a) + sro_ifun(0)));
@@ -1907,11 +1890,7 @@ SELECT brin_desummarize_range('sro_brin', 0);
 SELECT brin_summarize_range('sro_brin', 0);
  brin_summarize_range 
 ----------------------
-<<<<<<< HEAD
                     0
-=======
-                    1
->>>>>>> REL_16_9
 (1 row)
 
 DROP TABLE sro_tab;
@@ -1924,11 +1903,7 @@ INSERT INTO sro_ptab VALUES (1), (2), (3);
 CREATE INDEX sro_pidx ON sro_ptab ((sro_ifun(a) + sro_ifun(0)))
        WHERE sro_ifun(a + 10) > sro_ifun(10);
 REINDEX TABLE sro_ptab;
-<<<<<<< HEAD
 REINDEX INDEX sro_pidx;
-=======
-REINDEX INDEX CONCURRENTLY sro_pidx;
->>>>>>> REL_16_9
 SET SESSION AUTHORIZATION regress_sro_user;
 CREATE FUNCTION unwanted_grant() RETURNS void LANGUAGE sql AS
        'GRANT regress_priv_group2 TO regress_sro_user';
@@ -1958,13 +1933,6 @@ ERROR:  cannot fire deferred trigger within 
security-restricted operation
 \c -
 REFRESH MATERIALIZED VIEW sro_mv;
 ERROR:  cannot fire deferred trigger within security-restricted operation
-<<<<<<< HEAD
-BEGIN; SET allow_segment_DML = ON; SET CONSTRAINTS ALL IMMEDIATE; REFRESH 
MATERIALIZED VIEW sro_mv; COMMIT;
-ERROR:  must have admin option on role "regress_priv_group2"
-CONTEXT:  SQL function "unwanted_grant" statement 1
-SQL statement "SELECT unwanted_grant()"
-PL/pgSQL function sro_trojan() line 1 at PERFORM
-=======
 CONTEXT:  SQL function "mv_action" statement 1
 BEGIN; SET CONSTRAINTS ALL IMMEDIATE; REFRESH MATERIALIZED VIEW sro_mv; COMMIT;
 ERROR:  permission denied to grant role "regress_priv_group2"
@@ -1973,7 +1941,6 @@ CONTEXT:  SQL function "unwanted_grant" statement 1
 SQL statement "SELECT unwanted_grant()"
 PL/pgSQL function sro_trojan() line 1 at PERFORM
 SQL function "mv_action" statement 1
->>>>>>> REL_16_9
 -- REFRESH MATERIALIZED VIEW CONCURRENTLY use of eval_const_expressions()
 SET SESSION AUTHORIZATION regress_sro_user;
 CREATE FUNCTION unwanted_grant_nofail(int) RETURNS int
@@ -1986,7 +1953,6 @@ EXCEPTION WHEN OTHERS THEN
        RETURN 2;
 END$$;
 CREATE MATERIALIZED VIEW sro_index_mv AS SELECT 1 AS c;
-<<<<<<< HEAD
 -- start_ignore
 -- GPDB_14_MERGE_FIXME: the following command will abort the sub-transaction
 -- in a DDL. The problem is that aborting the sub-transaction will also erase
@@ -1997,11 +1963,24 @@ ERROR:  no pre-assigned OID for pg_class tuple 
"sro_index_mv_c_idx" (namespace:2
 -- end_ignore
 \c -
 -- REFRESH MATERIALIZED VIEW CONCURRENTLY sro_index_mv;
-=======
+REFRESH MATERIALIZED VIEW sro_index_mv;
+-- REFRESH MATERIALIZED VIEW CONCURRENTLY use of eval_const_expressions()
+SET SESSION AUTHORIZATION regress_sro_user;
+CREATE FUNCTION unwanted_grant_nofail(int) RETURNS int
+       IMMUTABLE LANGUAGE plpgsql AS $$
+BEGIN
+       PERFORM unwanted_grant();
+       RAISE WARNING 'owned';
+       RETURN 1;
+EXCEPTION WHEN OTHERS THEN
+       RETURN 2;
+END$$;
+ERROR:  function "unwanted_grant_nofail" already exists with same argument 
types
+CREATE MATERIALIZED VIEW sro_index_mv AS SELECT 1 AS c;
+ERROR:  relation "sro_index_mv" already exists
 CREATE UNIQUE INDEX ON sro_index_mv (c) WHERE unwanted_grant_nofail(1) > 0;
 \c -
 REFRESH MATERIALIZED VIEW CONCURRENTLY sro_index_mv;
->>>>>>> REL_16_9
 REFRESH MATERIALIZED VIEW sro_index_mv;
 DROP OWNED BY regress_sro_user;
 DROP ROLE regress_sro_user;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to