Convert worker_fetch_foreign_file to new connection API

pull/1454/head
velioglu 2017-06-02 16:34:21 +03:00
parent 43d2cdbd35
commit 7fe29aad4c
1 changed files with 10 additions and 1 deletions

View File

@ -14,6 +14,7 @@
#include "postgres.h" #include "postgres.h"
#include "funcapi.h" #include "funcapi.h"
#include "libpq-fe.h"
#include "miscadmin.h" #include "miscadmin.h"
#include <unistd.h> #include <unistd.h>
#include <sys/stat.h> #include <sys/stat.h>
@ -26,12 +27,14 @@
#include "commands/extension.h" #include "commands/extension.h"
#include "commands/sequence.h" #include "commands/sequence.h"
#include "distributed/citus_ruleutils.h" #include "distributed/citus_ruleutils.h"
#include "distributed/connection_management.h"
#include "distributed/master_protocol.h" #include "distributed/master_protocol.h"
#include "distributed/metadata_cache.h" #include "distributed/metadata_cache.h"
#include "distributed/multi_client_executor.h" #include "distributed/multi_client_executor.h"
#include "distributed/multi_logical_optimizer.h" #include "distributed/multi_logical_optimizer.h"
#include "distributed/multi_server_executor.h" #include "distributed/multi_server_executor.h"
#include "distributed/relay_utility.h" #include "distributed/relay_utility.h"
#include "distributed/remote_commands.h"
#include "distributed/resource_lock.h" #include "distributed/resource_lock.h"
#include "distributed/task_tracker.h" #include "distributed/task_tracker.h"
#include "distributed/worker_protocol.h" #include "distributed/worker_protocol.h"
@ -1007,11 +1010,17 @@ ForeignFilePath(const char *nodeName, uint32 nodePort, const char *tableName)
List *foreignPathList = NIL; List *foreignPathList = NIL;
StringInfo foreignPathCommand = NULL; StringInfo foreignPathCommand = NULL;
StringInfo foreignPath = NULL; StringInfo foreignPath = NULL;
MultiConnection *connection = NULL;
PGresult *result = NULL;
int connectionFlag = FORCE_NEW_CONNECTION;
foreignPathCommand = makeStringInfo(); foreignPathCommand = makeStringInfo();
appendStringInfo(foreignPathCommand, FOREIGN_FILE_PATH_COMMAND, tableName); appendStringInfo(foreignPathCommand, FOREIGN_FILE_PATH_COMMAND, tableName);
connection = GetNodeConnection(connectionFlag, nodeName, nodePort);
foreignPathList = ExecuteRemoteQuery(nodeName, nodePort, NULL, foreignPathCommand); ExecuteOptionalRemoteCommand(connection, foreignPathCommand->data, &result);
foreignPathList = ReadFirstColumnAsText(result);
if (foreignPathList != NIL) if (foreignPathList != NIL)
{ {
foreignPath = (StringInfo) linitial(foreignPathList); foreignPath = (StringInfo) linitial(foreignPathList);