GetNextNodeId() incorrectly called PG_RETURN_DATUM

- Also stabilize the output of a multi_router_planner test
release-7.2
Brian Cloutier 2018-01-29 15:32:36 -08:00 committed by Jason Petersen
parent d4147632c5
commit 939385cf1e
1 changed files with 3 additions and 5 deletions

View File

@ -1192,20 +1192,18 @@ GetNextNodeId()
Datum sequenceIdDatum = ObjectIdGetDatum(sequenceId); Datum sequenceIdDatum = ObjectIdGetDatum(sequenceId);
Oid savedUserId = InvalidOid; Oid savedUserId = InvalidOid;
int savedSecurityContext = 0; int savedSecurityContext = 0;
Datum nextNodedIdDatum = 0; Datum nextNodeIdDatum;
int nextNodeId = 0; int nextNodeId = 0;
GetUserIdAndSecContext(&savedUserId, &savedSecurityContext); GetUserIdAndSecContext(&savedUserId, &savedSecurityContext);
SetUserIdAndSecContext(CitusExtensionOwner(), SECURITY_LOCAL_USERID_CHANGE); SetUserIdAndSecContext(CitusExtensionOwner(), SECURITY_LOCAL_USERID_CHANGE);
/* generate new and unique shardId from sequence */ /* generate new and unique shardId from sequence */
nextNodedIdDatum = DirectFunctionCall1(nextval_oid, sequenceIdDatum); nextNodeIdDatum = DirectFunctionCall1(nextval_oid, sequenceIdDatum);
SetUserIdAndSecContext(savedUserId, savedSecurityContext); SetUserIdAndSecContext(savedUserId, savedSecurityContext);
PG_RETURN_DATUM(nextNodedIdDatum); nextNodeId = DatumGetUInt32(nextNodeIdDatum);
nextNodeId = DatumGetUInt32(nextNodeId);
return nextNodeId; return nextNodeId;
} }