Adress reviews

velioglu/wo_seq_test_1
Burak Velioglu 2022-01-16 16:39:49 +03:00
parent 5e2e5c3470
commit 04511cc5e0
No known key found for this signature in database
GPG Key ID: F6827E620F6549C6
3 changed files with 18 additions and 10 deletions

View File

@ -158,18 +158,18 @@ start_metadata_sync_to_node(PG_FUNCTION_ARGS)
char *nodeNameString = text_to_cstring(nodeName); char *nodeNameString = text_to_cstring(nodeName);
StartMetadataSyncToNode(nodeNameString, nodePort); SyncNodeMetadataToNode(nodeNameString, nodePort);
PG_RETURN_VOID(); PG_RETURN_VOID();
} }
/* /*
* StartMetadataSyncToNode is the internal API for * SyncNodeMetadataToNode is the internal API for
* start_metadata_sync_to_node(). * start_metadata_sync_to_node().
*/ */
void void
StartMetadataSyncToNode(const char *nodeNameString, int32 nodePort) SyncNodeMetadataToNode(const char *nodeNameString, int32 nodePort)
{ {
char *escapedNodeName = quote_literal_cstr(nodeNameString); char *escapedNodeName = quote_literal_cstr(nodeNameString);

View File

@ -651,9 +651,12 @@ SetUpMultipleDistributedTableIntegrations(WorkerNode *workerNode)
multipleTableIntegrationCommandList); multipleTableIntegrationCommandList);
multipleTableIntegrationCommandList = lappend(multipleTableIntegrationCommandList, multipleTableIntegrationCommandList = lappend(multipleTableIntegrationCommandList,
ENABLE_DDL_PROPAGATION); ENABLE_DDL_PROPAGATION);
/* send commands to new workers, the current user should be a superuser */
Assert(superuser());
SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName, SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName,
workerNode->workerPort, workerNode->workerPort,
CitusExtensionOwnerName(), CurrentUserName(),
multipleTableIntegrationCommandList); multipleTableIntegrationCommandList);
} }
@ -720,10 +723,11 @@ SetUpObjectMetadata(WorkerNode *workerNode)
metadataSnapshotCommandList = lappend(metadataSnapshotCommandList, metadataSnapshotCommandList = lappend(metadataSnapshotCommandList,
ENABLE_DDL_PROPAGATION); ENABLE_DDL_PROPAGATION);
char *currentUser = CurrentUserName(); /* send commands to new workers, the current user should be a superuser */
Assert(superuser());
SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName, SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName,
workerNode->workerPort, workerNode->workerPort,
currentUser, CurrentUserName(),
metadataSnapshotCommandList); metadataSnapshotCommandList);
} }
@ -828,9 +832,11 @@ UpdatePgDistLocalGroupOnNode(WorkerNode *workerNode)
List *localGroupIdUpdateCommandList = list_make1(localGroupIdUpdateCommand); List *localGroupIdUpdateCommandList = list_make1(localGroupIdUpdateCommand);
/* send commands to new workers, the current user should be a superuser */
Assert(superuser());
SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName, SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName,
workerNode->workerPort, workerNode->workerPort,
CitusExtensionOwnerName(), CurrentUserName(),
localGroupIdUpdateCommandList); localGroupIdUpdateCommandList);
} }
@ -857,9 +863,11 @@ ClearDistributedTablesFromNode(WorkerNode *workerNode)
list_make1( list_make1(
ENABLE_DDL_PROPAGATION)); ENABLE_DDL_PROPAGATION));
/* send commands to new workers, the current user should be a superuser */
Assert(superuser());
SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName, SendMetadataCommandListToWorkerInCoordinatedTransaction(workerNode->workerName,
workerNode->workerPort, workerNode->workerPort,
CitusExtensionOwnerName(), CurrentUserName(),
clearDistributedTablesCommandList); clearDistributedTablesCommandList);
} }
@ -1242,7 +1250,7 @@ ActivateNode(char *nodeName, int nodePort)
if (syncMetadata) if (syncMetadata)
{ {
StartMetadataSyncToNode(nodeName, nodePort); SyncNodeMetadataToNode(nodeName, nodePort);
if (!NodeIsCoordinator(workerNode)) if (!NodeIsCoordinator(workerNode))
{ {

View File

@ -28,7 +28,7 @@ typedef enum
} MetadataSyncResult; } MetadataSyncResult;
/* Functions declarations for metadata syncing */ /* Functions declarations for metadata syncing */
extern void StartMetadataSyncToNode(const char *nodeNameString, int32 nodePort); extern void SyncNodeMetadataToNode(const char *nodeNameString, int32 nodePort);
extern bool ClusterHasKnownMetadataWorkers(void); extern bool ClusterHasKnownMetadataWorkers(void);
extern char * LocalGroupIdUpdateCommand(int32 groupId); extern char * LocalGroupIdUpdateCommand(int32 groupId);
extern bool ShouldSyncTableMetadata(Oid relationId); extern bool ShouldSyncTableMetadata(Oid relationId);