From 29b8576a33fcc780c36d763de3bcef9f7e0cd2cc Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Fri, 15 Apr 2016 10:05:44 -0700 Subject: [PATCH 1/2] Annotate variables only used for asserts with PG_USED_FOR_ASSERTS_ONLY. This avoids '-Wunused-but-set-variable' type warnings when compiling without assertions, e.g. against a system postgres. --- src/backend/distributed/executor/multi_client_executor.c | 2 +- src/backend/distributed/master/worker_node_manager.c | 2 +- src/backend/distributed/planner/multi_join_order.c | 2 +- src/backend/distributed/planner/multi_logical_planner.c | 2 +- src/backend/distributed/planner/multi_physical_planner.c | 3 ++- src/backend/distributed/worker/worker_merge_protocol.c | 2 +- 6 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/backend/distributed/executor/multi_client_executor.c b/src/backend/distributed/executor/multi_client_executor.c index ad6a110ef..286dab089 100644 --- a/src/backend/distributed/executor/multi_client_executor.c +++ b/src/backend/distributed/executor/multi_client_executor.c @@ -486,7 +486,7 @@ MultiClientQueryStatus(int32 connectionId) { PGconn *connection = NULL; PGresult *result = NULL; - int tupleCount = 0; + int tupleCount PG_USED_FOR_ASSERTS_ONLY = 0; bool copyResults = false; ConnStatusType connStatusType = CONNECTION_OK; ExecStatusType resultStatus = PGRES_COMMAND_OK; diff --git a/src/backend/distributed/master/worker_node_manager.c b/src/backend/distributed/master/worker_node_manager.c index c1e4c7010..04ba68658 100644 --- a/src/backend/distributed/master/worker_node_manager.c +++ b/src/backend/distributed/master/worker_node_manager.c @@ -305,7 +305,7 @@ FindRandomNodeNotInList(HTAB *WorkerNodesHash, List *currentNodeList) WorkerNode *workerNode = NULL; HASH_SEQ_STATUS status; uint32 workerNodeCount = 0; - uint32 currentNodeCount = 0; + uint32 currentNodeCount PG_USED_FOR_ASSERTS_ONLY = 0; bool lookForWorkerNode = true; uint32 workerPosition = 0; uint32 workerIndex = 0; diff --git a/src/backend/distributed/planner/multi_join_order.c b/src/backend/distributed/planner/multi_join_order.c index ba9f1c346..9f14e4c89 100644 --- a/src/backend/distributed/planner/multi_join_order.c +++ b/src/backend/distributed/planner/multi_join_order.c @@ -750,7 +750,7 @@ BestJoinOrder(List *candidateJoinOrders) List *bestJoinOrder = NULL; uint32 ruleTypeIndex = 0; uint32 highestValidIndex = JOIN_RULE_LAST - 1; - uint32 candidateCount = 0; + uint32 candidateCount PG_USED_FOR_ASSERTS_ONLY = 0; /* * We start with the highest ranking rule type (cartesian product), and walk diff --git a/src/backend/distributed/planner/multi_logical_planner.c b/src/backend/distributed/planner/multi_logical_planner.c index bcb4e0995..33acc0d46 100644 --- a/src/backend/distributed/planner/multi_logical_planner.c +++ b/src/backend/distributed/planner/multi_logical_planner.c @@ -1560,7 +1560,7 @@ ApplyJoinRule(MultiNode *leftNode, MultiNode *rightNode, JoinRuleType ruleType, List *applicableJoinClauses = NIL; List *leftTableIdList = OutputTableIdList(leftNode); List *rightTableIdList = OutputTableIdList(rightNode); - int rightTableIdCount = 0; + int rightTableIdCount PG_USED_FOR_ASSERTS_ONLY = 0; uint32 rightTableId = 0; rightTableIdCount = list_length(rightTableIdList); diff --git a/src/backend/distributed/planner/multi_physical_planner.c b/src/backend/distributed/planner/multi_physical_planner.c index c6435015b..1488d1e94 100644 --- a/src/backend/distributed/planner/multi_physical_planner.c +++ b/src/backend/distributed/planner/multi_physical_planner.c @@ -1724,7 +1724,8 @@ BuildMapMergeJob(Query *jobQuery, List *dependedJobList, Var *partitionKey, SortedShardIntervalArray(shardIntervalList); /* this join-type currently doesn't work for hash partitioned tables */ - char basePartitionMethod = PartitionMethod(baseRelationId); + char basePartitionMethod PG_USED_FOR_ASSERTS_ONLY = + PartitionMethod(baseRelationId); Assert(basePartitionMethod != DISTRIBUTE_BY_HASH); mapMergeJob->partitionType = RANGE_PARTITION_TYPE; diff --git a/src/backend/distributed/worker/worker_merge_protocol.c b/src/backend/distributed/worker/worker_merge_protocol.c index edd4dfb8b..1ff2265c2 100644 --- a/src/backend/distributed/worker/worker_merge_protocol.c +++ b/src/backend/distributed/worker/worker_merge_protocol.c @@ -368,7 +368,7 @@ CreateTaskTable(StringInfo schemaName, StringInfo relationName, CreateStmt *createStatement = NULL; RangeVar *relation = NULL; List *columnDefinitionList = NIL; - Oid relationId = InvalidOid; + Oid relationId PG_USED_FOR_ASSERTS_ONLY = InvalidOid; #if (PG_VERSION_NUM >= 90500) ObjectAddress relationObject; #endif From 39233c54ac5a461b8376eccb08ec097640451ec9 Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Fri, 15 Apr 2016 10:06:39 -0700 Subject: [PATCH 2/2] Remove wholly unused variable. This avoids a -Wunused warning. --- src/backend/distributed/planner/modify_planner.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/backend/distributed/planner/modify_planner.c b/src/backend/distributed/planner/modify_planner.c index 4484e53bb..f7f3cf9a1 100644 --- a/src/backend/distributed/planner/modify_planner.c +++ b/src/backend/distributed/planner/modify_planner.c @@ -102,7 +102,6 @@ ErrorIfQueryNotSupported(Query *queryTree) Oid distributedTableId = ExtractFirstDistributedTableId(queryTree); uint32 rangeTableId = 1; Var *partitionColumn = PartitionColumn(distributedTableId, rangeTableId); - char partitionMethod = PartitionMethod(distributedTableId); List *rangeTableList = NIL; ListCell *rangeTableCell = NULL; bool hasValuesScan = false;