diff options
author | Michael Paquier | 2012-08-15 06:36:15 +0000 |
---|---|---|
committer | Michael Paquier | 2012-08-15 06:36:15 +0000 |
commit | 0c6ee90d69c9e34caf1829af090010508e0cf6c6 (patch) | |
tree | d718cc5b47288aa7b6f9ae617a97ee4ad379cb90 | |
parent | fe9985c168d85738e5d88ed9407b840449f31b75 (diff) |
Fix some warnings in code for compilation O2
Most of the warnings present in code are fixed, most of them
being uninitialized variables. The remaining warnings need some
deeper clean-up.
-rw-r--r-- | src/backend/access/transam/varsup.c | 7 | ||||
-rw-r--r-- | src/backend/access/transam/xact.c | 2 | ||||
-rw-r--r-- | src/backend/access/transam/xlog.c | 4 | ||||
-rw-r--r-- | src/backend/commands/sequence.c | 2 | ||||
-rw-r--r-- | src/backend/nodes/makefuncs.c | 1 | ||||
-rw-r--r-- | src/backend/optimizer/plan/createplan.c | 2 | ||||
-rw-r--r-- | src/backend/pgxc/locator/locator.c | 2 | ||||
-rw-r--r-- | src/backend/pgxc/locator/redistrib.c | 2 | ||||
-rw-r--r-- | src/backend/pgxc/nodemgr/nodemgr.c | 3 | ||||
-rw-r--r-- | src/backend/pgxc/plan/planner.c | 5 | ||||
-rw-r--r-- | src/backend/pgxc/pool/execRemote.c | 4 | ||||
-rw-r--r-- | src/backend/utils/adt/dbsize.c | 2 | ||||
-rw-r--r-- | src/gtm/client/fe-connect.c | 4 | ||||
-rw-r--r-- | src/gtm/common/gtm_lock.c | 4 | ||||
-rw-r--r-- | src/gtm/main/gtm_standby.c | 2 | ||||
-rw-r--r-- | src/gtm/proxy/proxy_main.c | 3 | ||||
-rw-r--r-- | src/include/gtm/pqexpbuffer.h | 8 | ||||
-rw-r--r-- | src/include/gtm/stringinfo.h | 4 | ||||
-rw-r--r-- | src/test/regress/pg_regress.c | 8 |
19 files changed, 45 insertions, 24 deletions
diff --git a/src/backend/access/transam/varsup.c b/src/backend/access/transam/varsup.c index 4831820f31..e9fb733bfb 100644 --- a/src/backend/access/transam/varsup.c +++ b/src/backend/access/transam/varsup.c @@ -112,7 +112,10 @@ GetNewTransactionId(bool isSubXact) elog(ERROR, "cannot assign TransactionIds during recovery"); #ifdef PGXC - if (IS_PGXC_COORDINATOR && !IsConnFromCoord() || IsPGXCNodeXactDatanodeDirect()) + /* Initialize transaction ID */ + xid = InvalidTransactionId; + + if ((IS_PGXC_COORDINATOR && !IsConnFromCoord()) || IsPGXCNodeXactDatanodeDirect()) { /* * Get XID from GTM before acquiring the lock. @@ -134,7 +137,7 @@ GetNewTransactionId(bool isSubXact) #ifdef PGXC /* Only remote Coordinator or a Datanode accessed directly by an application can get a GXID */ - if (IS_PGXC_COORDINATOR && !IsConnFromCoord() || IsPGXCNodeXactDatanodeDirect()) + if ((IS_PGXC_COORDINATOR && !IsConnFromCoord()) || IsPGXCNodeXactDatanodeDirect()) { if (TransactionIdIsValid(xid)) { diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c index 4b0b5cebfc..9b5a86cfd4 100644 --- a/src/backend/access/transam/xact.c +++ b/src/backend/access/transam/xact.c @@ -2533,7 +2533,7 @@ PrepareTransaction(void) TimestampTz prepared_at; #ifdef PGXC bool isImplicit = !(s->blockState == TBLOCK_PREPARE); - char *nodestring; + char *nodestring = NULL; #endif ShowTransactionState("PrepareTransaction"); diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 16522b98c5..829cf81a1a 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -5672,7 +5672,7 @@ recoveryStopsHere(XLogRecord *record, bool *includeThis) bool stopsHere; #ifdef PGXC bool stopsAtThisBarrier = false; - char *recordBarrierId; + char *recordBarrierId = NULL; #endif uint8 record_info; TimestampTz recordXtime; @@ -5726,7 +5726,7 @@ recoveryStopsHere(XLogRecord *record, bool *includeThis) (errmsg("processing barrier xlog record for %s", recordBarrierId))); } } -#endif +#endif else if (record->xl_rmid == RM_XLOG_ID && record_info == XLOG_RESTORE_POINT) { xl_restore_point *recordRestorePointData; diff --git a/src/backend/commands/sequence.c b/src/backend/commands/sequence.c index 99d7352d37..90ef06b162 100644 --- a/src/backend/commands/sequence.c +++ b/src/backend/commands/sequence.c @@ -304,7 +304,7 @@ DefineSequence(CreateSeqStmt *seq) if (CreateSequenceGTM(seqname, increment, min_value, - max_value, + max_value, start_value, cycle) < 0) { ereport(ERROR, diff --git a/src/backend/nodes/makefuncs.c b/src/backend/nodes/makefuncs.c index 396a16dc8b..10db8721a7 100644 --- a/src/backend/nodes/makefuncs.c +++ b/src/backend/nodes/makefuncs.c @@ -186,6 +186,7 @@ makeWholeRowVar(RangeTblEntry *rte, break; #ifdef PGXC case RTE_REMOTE_DUMMY: + result = NULL; elog(ERROR, "Invalid RTE found"); break; #endif /* PGXC */ diff --git a/src/backend/optimizer/plan/createplan.c b/src/backend/optimizer/plan/createplan.c index 925a81cc1d..35d530b2fb 100644 --- a/src/backend/optimizer/plan/createplan.c +++ b/src/backend/optimizer/plan/createplan.c @@ -6654,7 +6654,7 @@ static List * pgxc_add_node_to_grouping_tlist(List *remote_tlist, Node *expr, Index ressortgroupref) { TargetEntry *remote_tle; - Oid saved_aggtype; + Oid saved_aggtype = InvalidOid; /* * When we add an aggregate to the remote targetlist the aggtype of such diff --git a/src/backend/pgxc/locator/locator.c b/src/backend/pgxc/locator/locator.c index b5b920a443..577023c96b 100644 --- a/src/backend/pgxc/locator/locator.c +++ b/src/backend/pgxc/locator/locator.c @@ -777,7 +777,7 @@ GetRelationNodesByQuals(Oid reloid, Index varno, Node *quals, char ConvertToLocatorType(int disttype) { - char loctype; + char loctype = LOCATOR_TYPE_NONE; switch (disttype) { diff --git a/src/backend/pgxc/locator/redistrib.c b/src/backend/pgxc/locator/redistrib.c index 264f01b1d1..29467f42c6 100644 --- a/src/backend/pgxc/locator/redistrib.c +++ b/src/backend/pgxc/locator/redistrib.c @@ -701,7 +701,7 @@ distrib_delete_hash(RedistribState *distribState, ExecNodes *exec_nodes) foreach(item, exec_nodes->nodeList) { StringInfo buf2; - char *hashfuncname, *colname; + char *hashfuncname, *colname = NULL; Oid hashtype; RelationLocInfo *locinfo = RelationGetLocInfo(rel); int nodenum = lfirst_int(item); diff --git a/src/backend/pgxc/nodemgr/nodemgr.c b/src/backend/pgxc/nodemgr/nodemgr.c index 68b3e91500..1d1b5fb1a1 100644 --- a/src/backend/pgxc/nodemgr/nodemgr.c +++ b/src/backend/pgxc/nodemgr/nodemgr.c @@ -335,9 +335,8 @@ PgxcNodeListAndCount(void) node = &coDefs[(*shmemNumCoords)++]; break; case PGXC_NODE_DATANODE: - node = &dnDefs[(*shmemNumDataNodes)++]; - break; default: + node = &dnDefs[(*shmemNumDataNodes)++]; break; } diff --git a/src/backend/pgxc/plan/planner.c b/src/backend/pgxc/plan/planner.c index 93ef939b75..fcb0fec6c9 100644 --- a/src/backend/pgxc/plan/planner.c +++ b/src/backend/pgxc/plan/planner.c @@ -102,7 +102,7 @@ make_ctid_col_ref(Query *qry) ListCell *lc1, *lc2; RangeTblEntry *rte1, *rte2; int tableRTEs, firstTableRTENumber; - RangeTblEntry *rte_in_query; + RangeTblEntry *rte_in_query = NULL; AttrNumber attnum; Oid vartypeid; int32 type_mod; @@ -165,6 +165,7 @@ make_ctid_col_ref(Query *qry) } attnum = specialAttNum("ctid"); + Assert(rte_in_query); get_rte_attribute_type(rte_in_query, attnum, &vartypeid, &type_mod, &varcollid); return makeVar(firstTableRTENumber, attnum, vartypeid, type_mod, varcollid, 0); } @@ -1325,7 +1326,7 @@ pgxc_FQS_get_relation_nodes(RangeTblEntry *rte, Index varno, Query *query) CmdType command_type = query->commandType; bool for_update = query->rowMarks ? true : false; ExecNodes *rel_exec_nodes; - RelationAccessType rel_access; + RelationAccessType rel_access = RELATION_ACCESS_READ; RelationLocInfo *rel_loc_info; Assert(rte == rt_fetch(varno, (query->rtable))); diff --git a/src/backend/pgxc/pool/execRemote.c b/src/backend/pgxc/pool/execRemote.c index f77ca29de8..5836670d03 100644 --- a/src/backend/pgxc/pool/execRemote.c +++ b/src/backend/pgxc/pool/execRemote.c @@ -2925,8 +2925,8 @@ do_query(RemoteQueryState *node) PGXCNodeHandle **connections = NULL; PGXCNodeHandle *primaryconnection = NULL; int i; - int regular_conn_count; - int total_conn_count; + int regular_conn_count = 0; + int total_conn_count = 0; bool need_tran_block; PGXCNodeAllHandles *pgxc_connections; diff --git a/src/backend/utils/adt/dbsize.c b/src/backend/utils/adt/dbsize.c index 126750a2de..78fc657207 100644 --- a/src/backend/utils/adt/dbsize.c +++ b/src/backend/utils/adt/dbsize.c @@ -1051,7 +1051,7 @@ pgxc_exec_sizefunc(Oid relOid, char *funcname, char *extra_arg) { int numnodes; Oid *nodelist; - char *relname; + char *relname = NULL; StringInfoData buf; Relation rel; diff --git a/src/gtm/client/fe-connect.c b/src/gtm/client/fe-connect.c index 157baa61b7..a3add0e1f4 100644 --- a/src/gtm/client/fe-connect.c +++ b/src/gtm/client/fe-connect.c @@ -249,7 +249,7 @@ connectFailureMessage(GTM_Conn *conn, int errorno) static int connectGTMStart(GTM_Conn *conn) { - int portnum; + int portnum = 0; char portstr[128]; struct addrinfo *addrs = NULL; struct addrinfo hint; @@ -1006,7 +1006,7 @@ GTMPQconninfoParse(const char *conninfo, char **errmsg) if (errmsg) *errmsg = NULL; /* default */ initGTMPQExpBuffer(&errorBuf); - if (PQExpBufferBroken(&errorBuf)) + if (PQExpBufferDataBroken(errorBuf)) return NULL; /* out of memory already :-( */ connOptions = conninfo_parse(conninfo, &errorBuf, false); if (connOptions == NULL && errmsg) diff --git a/src/gtm/common/gtm_lock.c b/src/gtm/common/gtm_lock.c index a3e0b88f6a..9cc368aafd 100644 --- a/src/gtm/common/gtm_lock.c +++ b/src/gtm/common/gtm_lock.c @@ -28,7 +28,7 @@ bool GTM_RWLockAcquire(GTM_RWLock *lock, GTM_LockMode mode) { - int status; + int status = EINVAL; switch (mode) { @@ -86,7 +86,7 @@ GTM_RWLockDestroy(GTM_RWLock *lock) bool GTM_RWLockConditionalAcquire(GTM_RWLock *lock, GTM_LockMode mode) { - int status; + int status = EINVAL; switch (mode) { diff --git a/src/gtm/main/gtm_standby.c b/src/gtm/main/gtm_standby.c index 5c2c8f0a4d..f99b70cf90 100644 --- a/src/gtm/main/gtm_standby.c +++ b/src/gtm/main/gtm_standby.c @@ -410,7 +410,7 @@ gtm_standby_disconnect_from_standby(GTM_Conn *conn) GTM_Conn * gtm_standby_reconnect_to_standby(GTM_Conn *old_conn, int retry_max) { - GTM_Conn *newconn; + GTM_Conn *newconn = NULL; int report; int i; diff --git a/src/gtm/proxy/proxy_main.c b/src/gtm/proxy/proxy_main.c index 9de9d0c7a2..4d57a2c143 100644 --- a/src/gtm/proxy/proxy_main.c +++ b/src/gtm/proxy/proxy_main.c @@ -3150,8 +3150,7 @@ RegisterProxy(bool is_reconnect) GTM_Result *res = NULL; char proxyname[] = ""; time_t finish_time; - - MemoryContext old_mcxt; + MemoryContext old_mcxt = NULL; if (is_reconnect) { diff --git a/src/include/gtm/pqexpbuffer.h b/src/include/gtm/pqexpbuffer.h index 189293815f..9007f78c4d 100644 --- a/src/include/gtm/pqexpbuffer.h +++ b/src/include/gtm/pqexpbuffer.h @@ -61,6 +61,14 @@ typedef PQExpBufferData *PQExpBuffer; ((str) == NULL || (str)->maxlen == 0) /*------------------------ + * Same, but for use when using a static or local PQExpBufferData struct. + * For that, a null-pointer test is useless and may draw compiler warnings. + *------------------------ + */ +#define PQExpBufferDataBroken(buf) \ + ((buf).maxlen == 0) + +/*------------------------ * Initial size of the data buffer in a PQExpBuffer. * NB: this must be large enough to hold error messages that might * be returned by PQrequestCancel(). diff --git a/src/include/gtm/stringinfo.h b/src/include/gtm/stringinfo.h index 4666fefc7e..27f2bd8cea 100644 --- a/src/include/gtm/stringinfo.h +++ b/src/include/gtm/stringinfo.h @@ -106,7 +106,9 @@ __attribute__((format(printf, 2, 3))); * without modifying str. Typically the caller would enlarge str and retry * on false return --- see appendStringInfo for standard usage pattern. */ -extern bool appendStringInfoVA(StringInfo str, const char *fmt, va_list args); +extern bool +appendStringInfoVA(StringInfo str, const char *fmt, va_list args) +__attribute__((format(printf, 2, 0))); /*------------------------ * appendStringInfoString diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c index ce0b09ab86..22cf7898db 100644 --- a/src/test/regress/pg_regress.c +++ b/src/test/regress/pg_regress.c @@ -197,6 +197,14 @@ psql_command(const char *database, const char *query,...) the supplied arguments. */ __attribute__((format(PG_PRINTF_ATTRIBUTE, 2, 3))); +#ifdef PGXC +static void +psql_command_node(const char *database, PGXCNodeTypeNum node, const char *query,...) +/* This extension allows gcc to check the format string for consistency with + the supplied arguments. */ +__attribute__((format(PG_PRINTF_ATTRIBUTE, 3, 4))); +#endif + #ifdef WIN32 typedef BOOL (WINAPI * __CreateRestrictedToken) (HANDLE, DWORD, DWORD, PSID_AND_ATTRIBUTES, DWORD, PLUID_AND_ATTRIBUTES, DWORD, PSID_AND_ATTRIBUTES, PHANDLE); |