multi_cluster_management errors: ambiguous collation in LIKE

Add missing include for pg_collation in remote_commands.c
m3hm3t/pg18_support
Mehmet Yilmaz 2025-06-13 14:27:18 +00:00
parent 6220ff57e8
commit a9323913d7
2 changed files with 7 additions and 4 deletions

View File

@ -19,6 +19,7 @@
#include "utils/builtins.h"
#include "utils/fmgrprotos.h"
#include "utils/palloc.h"
#include "catalog/pg_collation.h"
#include "distributed/cancel_utils.h"
#include "distributed/connection_management.h"
@ -371,8 +372,9 @@ CommandMatchesLogGrepPattern(const char *command)
if (GrepRemoteCommands && strnlen(GrepRemoteCommands, NAMEDATALEN) > 0)
{
Datum boolDatum =
DirectFunctionCall2(textlike, CStringGetTextDatum(command),
CStringGetTextDatum(GrepRemoteCommands));
DirectFunctionCall2Coll(textlike, DEFAULT_COLLATION_OID,
CStringGetTextDatum(command),
CStringGetTextDatum(GrepRemoteCommands));
return DatumGetBool(boolDatum);
}

View File

@ -514,8 +514,9 @@ PendingWorkerTransactionList(MultiConnection *connection)
List *transactionNames = NIL;
int32 coordinatorId = GetLocalGroupId();
appendStringInfo(command, "SELECT gid FROM pg_prepared_xacts "
"WHERE gid LIKE 'citus\\_%d\\_%%' and database = current_database()",
appendStringInfo(command,
"SELECT gid FROM pg_prepared_xacts "
"WHERE gid COLLATE pg_catalog.default LIKE 'citus\\_%d\\_%%' COLLATE pg_catalog.default AND database = current_database()",
coordinatorId);
int querySent = SendRemoteCommand(connection, command->data);