Address some of the PR feedback from Andres

pull/366/head
Metin Doslu 2016-03-24 21:17:05 -07:00
parent a326205bc2
commit 69ce21a42f
2 changed files with 8 additions and 14 deletions

View File

@ -315,10 +315,9 @@ CitusCopyFrom(CopyStmt *copyStatement, char *completionTag)
nextRowFound = NextCopyFrom(copyState, executorExpressionContext,
columnValues,columnNulls, NULL);
MemoryContextSwitchTo(oldContext);
if (!nextRowFound)
{
MemoryContextSwitchTo(oldContext);
break;
}
@ -348,9 +347,11 @@ CitusCopyFrom(CopyStmt *copyStatement, char *completionTag)
shardId = shardInterval->shardId;
MemoryContextSwitchTo(oldContext);
/* find the connections to the shard placements */
shardConnections = (ShardConnections *) hash_search(shardConnectionHash,
&shardInterval->shardId,
&shardId,
HASH_ENTER,
&found);
if (!found)
@ -394,17 +395,10 @@ CitusCopyFrom(CopyStmt *copyStatement, char *completionTag)
PrepareTransactions(connectionList);
}
pfree(columnValues);
pfree(columnNulls);
FreeExecutorState(executorState);
CHECK_FOR_INTERRUPTS();
}
PG_CATCH();
{
EndCopyFrom(copyState);
/* roll back all transactions */
connectionList = ConnectionList(shardConnectionHash);
EndRemoteCopy(connectionList, false);
@ -749,7 +743,7 @@ SendCopyDataToPlacements(StringInfo dataBuffer, ShardConnections *shardConnectio
char *nodeName = ConnectionGetOptionValue(connection, "host");
char *nodePort = ConnectionGetOptionValue(connection, "port");
ereport(ERROR, (errcode(ERRCODE_IO_ERROR),
errmsg("Failed to COPY to shard %ld on %s:%s",
errmsg("failed to COPY to shard %ld on %s:%s",
shardId, nodeName, nodePort)));
}
}
@ -817,7 +811,7 @@ EndRemoteCopy(List *connectionList, bool stopOnFailure)
if (stopOnFailure)
{
ereport(ERROR, (errcode(ERRCODE_IO_ERROR),
errmsg("Failed to COPY to shard %ld on %s:%s",
errmsg("failed to COPY to shard %ld on %s:%s",
shardId, nodeName, nodePort)));
}

View File

@ -723,8 +723,8 @@ ParseWorkerNodeFile(const char *workerNodeFilename)
/* allocate worker node structure and set fields */
workerNode = (WorkerNode *) palloc0(sizeof(WorkerNode));
strlcpy(workerNode->workerName, nodeName, WORKER_LENGTH + 1);
strlcpy(workerNode->workerRack, nodeRack, WORKER_LENGTH + 1);
strlcpy(workerNode->workerName, nodeName, WORKER_LENGTH);
strlcpy(workerNode->workerRack, nodeRack, WORKER_LENGTH);
workerNode->workerPort = nodePort;
workerNode->inWorkerFile = true;