HAWQ-1187. Fix "-Wsometimes-uninitialized, -Wsizeof-pointer-memaccess, -Wdangling-else, -Wheader-guard, -Wenum-conversion, -Winvalid-source-encoding" compile warnings under osx.
diff --git a/src/backend/access/appendonly/aosegfiles.c b/src/backend/access/appendonly/aosegfiles.c
index 7a57d96..3021f3c 100644
--- a/src/backend/access/appendonly/aosegfiles.c
+++ b/src/backend/access/appendonly/aosegfiles.c
@@ -1091,7 +1091,7 @@
gp_update_ao_master_stats_internal(Oid relid, Snapshot appendOnlyMetaDataSnapshot)
{
Relation parentrel;
- Datum returnDatum;
+ Datum returnDatum = 0;
/* open the parent (main) relation */
parentrel = heap_open(relid, RowExclusiveLock);
diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c
index 1f61f5e..a70cf01 100644
--- a/src/backend/commands/dbcommands.c
+++ b/src/backend/commands/dbcommands.c
@@ -852,6 +852,7 @@
* because it's already reserved for HCatalog integration feature.
*/
if (OidIsValid(get_database_oid(dbname)))
+ {
if (strcmp(dbname, HcatalogDbName) == 0)
ereport(ERROR,
(errcode(ERRCODE_RESERVED_NAME),
@@ -860,6 +861,7 @@
ereport(ERROR,
(errcode(ERRCODE_DUPLICATE_DATABASE),
errmsg("database \"%s\" already exists", dbname)));
+ }
/*
* Select an OID for the new database, checking that it doesn't have
diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c
index 9c4d3fd..bda1616 100644
--- a/src/backend/commands/tablecmds.c
+++ b/src/backend/commands/tablecmds.c
@@ -800,7 +800,7 @@
* Add Default page size and rowgroup size to relation options
*/
static Datum AddDefaultPageRowGroupSize(Datum relOptions, List *defList){
- Datum result;
+ Datum result = 0;
ListCell *cell = NULL;
bool pageSizeSet = false;
bool rowgroupSizeSet = false;
@@ -4718,7 +4718,7 @@
pc->arg1 = (Node *)NIL;
foreach(l, todo)
{
- List *l1;
+ List *l1 = NIL;
ListCell *lc;
Node *t = lfirst(l);
@@ -10742,10 +10742,10 @@
HeapTuple tuple;
- int32 segmentFileNum;
+ int32 segmentFileNum = 0;
ItemPointerData oldPersistentTid;
- int64 oldPersistentSerialNum;
+ int64 oldPersistentSerialNum = 0;
ItemPointerData newPersistentTid;
int64 newPersistentSerialNum;
diff --git a/src/backend/executor/execQual.c b/src/backend/executor/execQual.c
index 6059a66..dc9f527 100644
--- a/src/backend/executor/execQual.c
+++ b/src/backend/executor/execQual.c
@@ -1562,7 +1562,7 @@
{
fcinfo.resultinfo = (Node *) &rsinfo;
}
- rsinfo.type = T_ReturnSetInfo;
+ rsinfo.type = (fmNodeTag) T_ReturnSetInfo;
rsinfo.econtext = econtext;
rsinfo.expectedDesc = fcache->funcResultDesc;
rsinfo.allowedModes = (int) (SFRM_ValuePerCall | SFRM_Materialize);
@@ -1878,7 +1878,7 @@
* our own state variables.
*/
InitFunctionCallInfoData(fcinfo, NULL, 0, NULL, (Node *) &rsinfo);
- rsinfo.type = T_ReturnSetInfo;
+ rsinfo.type = (fmNodeTag) T_ReturnSetInfo;
rsinfo.econtext = econtext;
rsinfo.expectedDesc = expectedDesc;
rsinfo.allowedModes = (int) (SFRM_ValuePerCall | SFRM_Materialize);
diff --git a/src/backend/executor/nodeTableFunction.c b/src/backend/executor/nodeTableFunction.c
index dcd8a8c..a53dba2 100644
--- a/src/backend/executor/nodeTableFunction.c
+++ b/src/backend/executor/nodeTableFunction.c
@@ -416,7 +416,7 @@
ExecInitExpr((Expr *) rte->funcexpr, (PlanState *) scanstate);
Assert(scanstate->fcache && IsA(scanstate->fcache, FuncExprState));
- scanstate->rsinfo.type = T_ReturnSetInfo;
+ scanstate->rsinfo.type = (fmNodeTag) T_ReturnSetInfo;
scanstate->rsinfo.econtext = econtext;
scanstate->rsinfo.expectedDesc = resultdesc;
scanstate->rsinfo.allowedModes = (int) (SFRM_ValuePerCall);
diff --git a/src/backend/optimizer/plan/setrefs.c b/src/backend/optimizer/plan/setrefs.c
index e3b2096..e79fb30 100644
--- a/src/backend/optimizer/plan/setrefs.c
+++ b/src/backend/optimizer/plan/setrefs.c
@@ -1461,7 +1461,7 @@
* if they are duplicated in qpqual, so must test these independently.
*/
Index innerrel;
- List **bitmapqualorig_p;
+ List **bitmapqualorig_p = NIL;
if (IsA(inner_plan, BitmapHeapScan))
{
BitmapHeapScan *innerscan = (BitmapHeapScan *) inner_plan;
diff --git a/src/backend/parser/analyze.c b/src/backend/parser/analyze.c
index 1937471..6ae62b3 100644
--- a/src/backend/parser/analyze.c
+++ b/src/backend/parser/analyze.c
@@ -9322,7 +9322,7 @@
{
GroupingClause *gc = (GroupingClause*)node;
GroupingClause *new_gc = makeNode(GroupingClause);
- memcpy(new_gc, gc, sizeof(gc));
+ memcpy(new_gc, gc, sizeof(GroupingClause));
new_gc->groupsets = (List*)map_sgr_mutator((Node*)gc->groupsets, ctx);
return (Node*)new_gc;
}
diff --git a/src/backend/resourcemanager/resourcebroker/resourcebroker_LIBYARN_proc.c b/src/backend/resourcemanager/resourcebroker/resourcebroker_LIBYARN_proc.c
index 9ea8510..73d4c0b 100644
--- a/src/backend/resourcemanager/resourcebroker/resourcebroker_LIBYARN_proc.c
+++ b/src/backend/resourcemanager/resourcebroker/resourcebroker_LIBYARN_proc.c
@@ -1624,6 +1624,9 @@
activeContainerIds[i] = allocatedResourcesArray[i].containerId;
}
+ /* Return the containers fail to activate. */
+ int64_t *activeFailIds = NULL;
+ int activeFailSize = 0;
yarnres = activeResources(LIBYARNClient,
YARNJobID,
activeContainerIds,
@@ -1637,9 +1640,6 @@
elog(LOG, "YARN mode resource broker submitted to activate %d containers.",
allocatedResourcesArraySize);
- /* Return the containers fail to activate. */
- int64_t *activeFailIds = NULL;
- int activeFailSize = 0;
yarnres = getActiveFailContainerIds(LIBYARNClient,
&activeFailIds,
&activeFailSize);
diff --git a/src/backend/utils/adt/date.c b/src/backend/utils/adt/date.c
index 66509e2..3056f16 100644
--- a/src/backend/utils/adt/date.c
+++ b/src/backend/utils/adt/date.c
@@ -60,7 +60,7 @@
struct pg_tm tt,
*tm = &tt;
int tzp;
- int dtype;
+ int dtype = 0;
int nf;
int dterr;
char *field[MAXDATEFIELDS];
@@ -907,7 +907,7 @@
#endif
int32 typmod = PG_GETARG_INT32(2);
TimeADT result;
- fsec_t fsec;
+ fsec_t fsec = 0;
struct pg_tm tt,
*tm = &tt;
int tz;
@@ -915,7 +915,7 @@
int dterr;
char workbuf[MAXDATELEN + 1];
char *field[MAXDATEFIELDS];
- int dtype;
+ int dtype = 0;
int ftype[MAXDATEFIELDS];
dterr = ParseDateTime(str, workbuf, sizeof(workbuf),
@@ -1773,15 +1773,15 @@
#endif
int32 typmod = PG_GETARG_INT32(2);
TimeTzADT *result;
- fsec_t fsec;
+ fsec_t fsec = 0;
struct pg_tm tt,
*tm = &tt;
- int tz;
+ int tz = 0;
int nf;
int dterr;
char workbuf[MAXDATELEN + 1];
char *field[MAXDATEFIELDS];
- int dtype;
+ int dtype = 0;
int ftype[MAXDATEFIELDS];
dterr = ParseDateTime(str, workbuf, sizeof(workbuf),
diff --git a/src/backend/utils/adt/nabstime.c b/src/backend/utils/adt/nabstime.c
index 65aacfd..ca00b13 100644
--- a/src/backend/utils/adt/nabstime.c
+++ b/src/backend/utils/adt/nabstime.c
@@ -229,7 +229,7 @@
int dterr;
char *field[MAXDATEFIELDS];
char workbuf[MAXDATELEN + 1];
- int dtype;
+ int dtype = 0;
int nf,
ftype[MAXDATEFIELDS];
diff --git a/src/backend/utils/adt/timestamp.c b/src/backend/utils/adt/timestamp.c
index 6549880..dbb523e 100644
--- a/src/backend/utils/adt/timestamp.c
+++ b/src/backend/utils/adt/timestamp.c
@@ -155,7 +155,7 @@
struct pg_tm tt,
*tm = &tt;
int tz;
- int dtype;
+ int dtype = 0;
int nf;
int dterr;
char *field[MAXDATEFIELDS];
@@ -419,7 +419,7 @@
struct pg_tm tt,
*tm = &tt;
int tz;
- int dtype;
+ int dtype = 0;
int nf;
int dterr;
char *field[MAXDATEFIELDS];
diff --git a/src/bin/pg_dump/dumputils.c b/src/bin/pg_dump/dumputils.c
index 1f8149b..9640bd6 100644
--- a/src/bin/pg_dump/dumputils.c
+++ b/src/bin/pg_dump/dumputils.c
@@ -1062,7 +1062,7 @@
custom_fmtopts_string(const char *src)
{
int len = src ? strlen(src) : 0;
- char *result = malloc(len * 2 + 1);
+ char *result = calloc(len * 2 + 1, sizeof(char));
char *srcdup = src ? strdup(src) : NULL;
char *srcdup_start = srcdup;
char *find_res = NULL;
@@ -1071,8 +1071,6 @@
if(!src || !srcdup || !result)
return NULL;
- memset(result,0,sizeof(result));
-
while (srcdup)
{
/* find first word (a) */
diff --git a/src/include/executor/execHHashagg.h b/src/include/executor/execHHashagg.h
index 34fd562..22fc1a1 100644
--- a/src/include/executor/execHHashagg.h
+++ b/src/include/executor/execHHashagg.h
@@ -32,7 +32,7 @@
*-------------------------------------------------------------------------
*/
#ifndef EXECHYBRIDHASHAGG_H
-#define EXECBYBRIDHASHAGG_H
+#define EXECHYBRIDHASHAGG_H
#include "executor/nodeAgg.h" /* Must see AggStatePerGroupData. */
#include "cdb/cdbpublic.h" /* CdbExplain_Agg / CdbCellBuf */