Fix server crash when trying to execute activate_node_snapshot() on a single-node cluster (#7552)

This fixes #7551 reported by Egor Chindyaskin

Function activate_node_snapshot() is not meant to be called on a cluster
without worker nodes. This commit adds ERROR report for such case to
prevent server crash.
pull/7841/head
Karina 2024-03-07 13:08:19 +03:00 committed by naisila
parent e2a03ce6a0
commit 89ccafff50
1 changed files with 7 additions and 0 deletions

View File

@ -50,6 +50,13 @@ activate_node_snapshot(PG_FUNCTION_ARGS)
* so we are using first primary worker node just for test purposes.
*/
WorkerNode *dummyWorkerNode = GetFirstPrimaryWorkerNode();
if (dummyWorkerNode == NULL)
{
ereport(ERROR, (errmsg("no worker nodes found"),
errdetail("Function activate_node_snapshot is meant to be "
"used when running tests on a multi-node cluster "
"with workers.")));
}
/*
* Create MetadataSyncContext which is used throughout nodes' activation.