diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/storage/file/sharedfileset.c | 4 | ||||
-rw-r--r-- | src/backend/utils/adt/jsonb.c | 19 | ||||
-rw-r--r-- | src/backend/utils/adt/numeric.c | 24 | ||||
-rw-r--r-- | src/backend/utils/adt/pgstatfuncs.c | 2 | ||||
-rw-r--r-- | src/backend/utils/misc/guc.c | 2 |
5 files changed, 30 insertions, 21 deletions
diff --git a/src/backend/storage/file/sharedfileset.c b/src/backend/storage/file/sharedfileset.c index 0ac86965366..d41b39a1771 100644 --- a/src/backend/storage/file/sharedfileset.c +++ b/src/backend/storage/file/sharedfileset.c @@ -214,9 +214,9 @@ SharedFileSetPath(char *path, SharedFileSet *fileset, Oid tablespace) char tempdirpath[MAXPGPATH]; TempTablespacePath(tempdirpath, tablespace); - snprintf(path, MAXPGPATH, "%s/%s%d.%u.sharedfileset", + snprintf(path, MAXPGPATH, "%s/%s%lu.%u.sharedfileset", tempdirpath, PG_TEMP_FILE_PREFIX, - fileset->creator_pid, fileset->number); + (unsigned long) fileset->creator_pid, fileset->number); } /* diff --git a/src/backend/utils/adt/jsonb.c b/src/backend/utils/adt/jsonb.c index e99bbc482a9..9d2b89f90cf 100644 --- a/src/backend/utils/adt/jsonb.c +++ b/src/backend/utils/adt/jsonb.c @@ -343,6 +343,7 @@ jsonb_in_scalar(void *pstate, char *token, JsonTokenType tokentype) { JsonbInState *_state = (JsonbInState *) pstate; JsonbValue v; + Datum numd; switch (tokentype) { @@ -361,18 +362,19 @@ jsonb_in_scalar(void *pstate, char *token, JsonTokenType tokentype) */ Assert(token != NULL); v.type = jbvNumeric; - v.val.numeric = DatumGetNumeric(DirectFunctionCall3(numeric_in, CStringGetDatum(token), 0, -1)); - + numd = DirectFunctionCall3(numeric_in, + CStringGetDatum(token), + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); + v.val.numeric = DatumGetNumeric(numd); break; case JSON_TOKEN_TRUE: v.type = jbvBool; v.val.boolean = true; - break; case JSON_TOKEN_FALSE: v.type = jbvBool; v.val.boolean = false; - break; case JSON_TOKEN_NULL: v.type = jbvNull; @@ -772,9 +774,14 @@ datum_to_jsonb(Datum val, bool is_null, JsonbInState *result, strchr(outputstr, 'n') != NULL); if (!numeric_error) { - jb.type = jbvNumeric; - jb.val.numeric = DatumGetNumeric(DirectFunctionCall3(numeric_in, CStringGetDatum(outputstr), 0, -1)); + Datum numd; + jb.type = jbvNumeric; + numd = DirectFunctionCall3(numeric_in, + CStringGetDatum(outputstr), + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); + jb.val.numeric = DatumGetNumeric(numd); pfree(outputstr); } else diff --git a/src/backend/utils/adt/numeric.c b/src/backend/utils/adt/numeric.c index c56d5afcb3b..dcf31e340c1 100644 --- a/src/backend/utils/adt/numeric.c +++ b/src/backend/utils/adt/numeric.c @@ -3818,8 +3818,8 @@ numeric_avg_deserialize(PG_FUNCTION_ARGS) /* sumX */ temp = DirectFunctionCall3(numeric_recv, PointerGetDatum(&buf), - InvalidOid, - -1); + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); init_var_from_num(DatumGetNumeric(temp), &tmp_var); accum_sum_add(&(result->sumX), &tmp_var); @@ -3941,16 +3941,16 @@ numeric_deserialize(PG_FUNCTION_ARGS) /* sumX */ temp = DirectFunctionCall3(numeric_recv, PointerGetDatum(&buf), - InvalidOid, - -1); + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); init_var_from_num(DatumGetNumeric(temp), &sumX_var); accum_sum_add(&(result->sumX), &sumX_var); /* sumX2 */ temp = DirectFunctionCall3(numeric_recv, PointerGetDatum(&buf), - InvalidOid, - -1); + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); init_var_from_num(DatumGetNumeric(temp), &sumX2_var); accum_sum_add(&(result->sumX2), &sumX2_var); @@ -4340,14 +4340,14 @@ numeric_poly_deserialize(PG_FUNCTION_ARGS) /* sumX */ sumX = DirectFunctionCall3(numeric_recv, PointerGetDatum(&buf), - InvalidOid, - -1); + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); /* sumX2 */ sumX2 = DirectFunctionCall3(numeric_recv, PointerGetDatum(&buf), - InvalidOid, - -1); + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); init_var_from_num(DatumGetNumeric(sumX), &sumX_var); #ifdef HAVE_INT128 @@ -4550,8 +4550,8 @@ int8_avg_deserialize(PG_FUNCTION_ARGS) /* sumX */ temp = DirectFunctionCall3(numeric_recv, PointerGetDatum(&buf), - InvalidOid, - -1); + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1)); init_var_from_num(DatumGetNumeric(temp), &num); #ifdef HAVE_INT128 numericvar_to_int128(&num, &result->sumX); diff --git a/src/backend/utils/adt/pgstatfuncs.c b/src/backend/utils/adt/pgstatfuncs.c index 6110e40d3e1..e95e3471846 100644 --- a/src/backend/utils/adt/pgstatfuncs.c +++ b/src/backend/utils/adt/pgstatfuncs.c @@ -813,7 +813,7 @@ pg_stat_get_activity(PG_FUNCTION_ARGS) */ nulls[12] = true; nulls[13] = true; - values[14] = DatumGetInt32(-1); + values[14] = Int32GetDatum(-1); } else { diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index e1c51c54812..f496ad62815 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -9610,6 +9610,8 @@ RestoreGUCState(void *gucstate) if (varsourcefile[0]) read_gucstate_binary(&srcptr, srcend, &varsourceline, sizeof(varsourceline)); + else + varsourceline = 0; read_gucstate_binary(&srcptr, srcend, &varsource, sizeof(varsource)); read_gucstate_binary(&srcptr, srcend, |