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

maxyang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudberry.git

commit fa7f4c697f01c500d9c0ed61357adeeffe1c078b
Author: Adam Lee <[email protected]>
AuthorDate: Fri Oct 28 11:26:21 2022 +0800

    Minor changes to align with the upstream
    
    Two blocks in src/bin/psql/command.c are redundant.
    One block in src/backend/commands/schemacmds.c is not at the right
    place.
---
 src/backend/commands/schemacmds.c   | 24 ++++++++++++------------
 src/backend/storage/ipc/procarray.c |  7 +------
 2 files changed, 13 insertions(+), 18 deletions(-)

diff --git a/src/backend/commands/schemacmds.c 
b/src/backend/commands/schemacmds.c
index 93bc2ace73..1a48dc15d7 100644
--- a/src/backend/commands/schemacmds.c
+++ b/src/backend/commands/schemacmds.c
@@ -178,6 +178,18 @@ CreateSchemaCommand(CreateSchemaStmt *stmt, const char 
*queryString,
                }
        }
 
+       /*
+        * If the requested authorization is different from the current user,
+        * temporarily set the current user so that the object(s) will be 
created
+        * with the correct ownership.
+        *
+        * (The setting will be restored at the end of this routine, or in case 
of
+        * error, transaction abort will clean things up.)
+        */
+       if (saved_uid != owner_uid)
+               SetUserIdAndSecContext(owner_uid,
+                                                          save_sec_context | 
SECURITY_LOCAL_USERID_CHANGE);
+
        /* Create the schema's namespace */
        if (shouldDispatch || Gp_role != GP_ROLE_EXECUTE)
        {
@@ -237,18 +249,6 @@ CreateSchemaCommand(CreateSchemaStmt *stmt, const char 
*queryString,
                }
        }
 
-       /*
-        * If the requested authorization is different from the current user,
-        * temporarily set the current user so that the object(s) will be 
created
-        * with the correct ownership.
-        *
-        * (The setting will be restored at the end of this routine, or in case 
of
-        * error, transaction abort will clean things up.)
-        */
-       if (saved_uid != owner_uid)
-               SetUserIdAndSecContext(owner_uid,
-                                                          save_sec_context | 
SECURITY_LOCAL_USERID_CHANGE);
-
        /* Advance cmd counter to make the namespace visible */
        CommandCounterIncrement();
 
diff --git a/src/backend/storage/ipc/procarray.c 
b/src/backend/storage/ipc/procarray.c
index c872907a46..d56a5847da 100644
--- a/src/backend/storage/ipc/procarray.c
+++ b/src/backend/storage/ipc/procarray.c
@@ -708,12 +708,6 @@ ProcArrayEndGxact(TMGXACT *tmGxact)
  * the caller to pass latestXid, instead of computing it from the PGPROC's
  * contents, because the subxid information in the PGPROC might be
  * incomplete.)
- *
- * GPDB: If this is a global transaction, we might need to do this action
- * later, rather than now. In that case, this function returns true for
- * needNotifyCommittedDtxTransaction, and does *not* change the state of the
- * PGPROC entry. This can only happen for commit; when !isCommit, this always
- * clears the PGPROC entry.
  */
 void
 ProcArrayEndTransaction(PGPROC *proc, TransactionId latestXid)
@@ -726,6 +720,7 @@ ProcArrayEndTransaction(PGPROC *proc, TransactionId 
latestXid)
                        MyProcPort ? MyProcPort->database_name : "",  // 
databaseName
                        ""); // tableName
 #endif
+
        if (TransactionIdIsValid(latestXid) || 
TransactionIdIsValid(tmGxact->gxid))
        {
                /*


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

Reply via email to