aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/access/brin/brin.c4
-rw-r--r--src/backend/access/common/heaptuple.c26
-rw-r--r--src/backend/access/common/indextuple.c12
-rw-r--r--src/backend/access/gist/gistutil.c4
-rw-r--r--src/backend/access/hash/hashsort.c2
-rw-r--r--src/backend/access/index/genam.c2
-rw-r--r--src/backend/access/spgist/spgutils.c4
-rw-r--r--src/backend/access/table/toast_helper.c2
-rw-r--r--src/backend/executor/execIndexing.c18
-rw-r--r--src/backend/executor/execTuples.c2
-rw-r--r--src/backend/partitioning/partbounds.c4
-rw-r--r--src/backend/utils/adt/json.c4
-rw-r--r--src/backend/utils/adt/jsonb.c10
-rw-r--r--src/backend/utils/sort/tuplesortvariants.c4
-rw-r--r--src/backend/utils/sort/tuplestore.c2
-rw-r--r--src/include/access/genam.h2
-rw-r--r--src/include/access/gist_private.h4
-rw-r--r--src/include/access/hash.h2
-rw-r--r--src/include/access/htup_details.h20
-rw-r--r--src/include/access/itup.h4
-rw-r--r--src/include/access/spgist_private.h4
-rw-r--r--src/include/access/toast_helper.h2
-rw-r--r--src/include/executor/executor.h4
-rw-r--r--src/include/partitioning/partbounds.h4
-rw-r--r--src/include/utils/json.h8
-rw-r--r--src/include/utils/jsonb.h8
-rw-r--r--src/include/utils/tuplesort.h2
-rw-r--r--src/include/utils/tuplestore.h2
28 files changed, 83 insertions, 83 deletions
diff --git a/src/backend/access/brin/brin.c b/src/backend/access/brin/brin.c
index a7538f32c2e..af392bc032b 100644
--- a/src/backend/access/brin/brin.c
+++ b/src/backend/access/brin/brin.c
@@ -80,7 +80,7 @@ static void union_tuples(BrinDesc *bdesc, BrinMemTuple *a,
BrinTuple *b);
static void brin_vacuum_scan(Relation idxrel, BufferAccessStrategy strategy);
static bool add_values_to_range(Relation idxRel, BrinDesc *bdesc,
- BrinMemTuple *dtup, Datum *values, bool *nulls);
+ BrinMemTuple *dtup, const Datum *values, const bool *nulls);
static bool check_null_keys(BrinValues *bval, ScanKey *nullkeys, int nnullkeys);
/*
@@ -1774,7 +1774,7 @@ brin_vacuum_scan(Relation idxrel, BufferAccessStrategy strategy)
static bool
add_values_to_range(Relation idxRel, BrinDesc *bdesc, BrinMemTuple *dtup,
- Datum *values, bool *nulls)
+ const Datum *values, const bool *nulls)
{
int keyno;
diff --git a/src/backend/access/common/heaptuple.c b/src/backend/access/common/heaptuple.c
index ef246c901e7..d6a4ddfd51f 100644
--- a/src/backend/access/common/heaptuple.c
+++ b/src/backend/access/common/heaptuple.c
@@ -205,8 +205,8 @@ getmissingattr(TupleDesc tupleDesc,
*/
Size
heap_compute_data_size(TupleDesc tupleDesc,
- Datum *values,
- bool *isnull)
+ const Datum *values,
+ const bool *isnull)
{
Size data_length = 0;
int i;
@@ -390,7 +390,7 @@ fill_val(Form_pg_attribute att,
*/
void
heap_fill_tuple(TupleDesc tupleDesc,
- Datum *values, bool *isnull,
+ const Datum *values, const bool *isnull,
char *data, Size data_size,
uint16 *infomask, bits8 *bit)
{
@@ -1106,8 +1106,8 @@ heap_copy_tuple_as_datum(HeapTuple tuple, TupleDesc tupleDesc)
*/
HeapTuple
heap_form_tuple(TupleDesc tupleDescriptor,
- Datum *values,
- bool *isnull)
+ const Datum *values,
+ const bool *isnull)
{
HeapTuple tuple; /* return tuple */
HeapTupleHeader td; /* tuple data */
@@ -1200,9 +1200,9 @@ heap_form_tuple(TupleDesc tupleDescriptor,
HeapTuple
heap_modify_tuple(HeapTuple tuple,
TupleDesc tupleDesc,
- Datum *replValues,
- bool *replIsnull,
- bool *doReplace)
+ const Datum *replValues,
+ const bool *replIsnull,
+ const bool *doReplace)
{
int numberOfAttributes = tupleDesc->natts;
int attoff;
@@ -1269,9 +1269,9 @@ HeapTuple
heap_modify_tuple_by_cols(HeapTuple tuple,
TupleDesc tupleDesc,
int nCols,
- int *replCols,
- Datum *replValues,
- bool *replIsnull)
+ const int *replCols,
+ const Datum *replValues,
+ const bool *replIsnull)
{
int numberOfAttributes = tupleDesc->natts;
Datum *values;
@@ -1442,8 +1442,8 @@ heap_freetuple(HeapTuple htup)
*/
MinimalTuple
heap_form_minimal_tuple(TupleDesc tupleDescriptor,
- Datum *values,
- bool *isnull)
+ const Datum *values,
+ const bool *isnull)
{
MinimalTuple tuple; /* return tuple */
Size len,
diff --git a/src/backend/access/common/indextuple.c b/src/backend/access/common/indextuple.c
index 8b178f94c17..9e9f87b134e 100644
--- a/src/backend/access/common/indextuple.c
+++ b/src/backend/access/common/indextuple.c
@@ -42,8 +42,8 @@
*/
IndexTuple
index_form_tuple(TupleDesc tupleDescriptor,
- Datum *values,
- bool *isnull)
+ const Datum *values,
+ const bool *isnull)
{
return index_form_tuple_context(tupleDescriptor, values, isnull,
CurrentMemoryContext);
@@ -63,8 +63,8 @@ index_form_tuple(TupleDesc tupleDescriptor,
*/
IndexTuple
index_form_tuple_context(TupleDesc tupleDescriptor,
- Datum *values,
- bool *isnull,
+ const Datum *values,
+ const bool *isnull,
MemoryContext context)
{
char *tp; /* tuple pointer */
@@ -79,8 +79,8 @@ index_form_tuple_context(TupleDesc tupleDescriptor,
int numberOfAttributes = tupleDescriptor->natts;
#ifdef TOAST_INDEX_HACK
- Datum untoasted_values[INDEX_MAX_KEYS];
- bool untoasted_free[INDEX_MAX_KEYS];
+ Datum untoasted_values[INDEX_MAX_KEYS] = {0};
+ bool untoasted_free[INDEX_MAX_KEYS] = {0};
#endif
if (numberOfAttributes > INDEX_MAX_KEYS)
diff --git a/src/backend/access/gist/gistutil.c b/src/backend/access/gist/gistutil.c
index b6bc8c2c56d..9ce3687dbf1 100644
--- a/src/backend/access/gist/gistutil.c
+++ b/src/backend/access/gist/gistutil.c
@@ -573,7 +573,7 @@ gistdentryinit(GISTSTATE *giststate, int nkey, GISTENTRY *e,
IndexTuple
gistFormTuple(GISTSTATE *giststate, Relation r,
- Datum *attdata, bool *isnull, bool isleaf)
+ const Datum *attdata, const bool *isnull, bool isleaf)
{
Datum compatt[INDEX_MAX_KEYS];
IndexTuple res;
@@ -594,7 +594,7 @@ gistFormTuple(GISTSTATE *giststate, Relation r,
void
gistCompressValues(GISTSTATE *giststate, Relation r,
- Datum *attdata, bool *isnull, bool isleaf, Datum *compatt)
+ const Datum *attdata, const bool *isnull, bool isleaf, Datum *compatt)
{
int i;
diff --git a/src/backend/access/hash/hashsort.c b/src/backend/access/hash/hashsort.c
index b67b2207c05..e7c3ab10e40 100644
--- a/src/backend/access/hash/hashsort.c
+++ b/src/backend/access/hash/hashsort.c
@@ -106,7 +106,7 @@ _h_spooldestroy(HSpool *hspool)
* spool an index entry into the sort file.
*/
void
-_h_spool(HSpool *hspool, ItemPointer self, Datum *values, bool *isnull)
+_h_spool(HSpool *hspool, ItemPointer self, const Datum *values, const bool *isnull)
{
tuplesort_putindextuplevalues(hspool->sortstate, hspool->index,
self, values, isnull);
diff --git a/src/backend/access/index/genam.c b/src/backend/access/index/genam.c
index 722927aebab..4ca12006843 100644
--- a/src/backend/access/index/genam.c
+++ b/src/backend/access/index/genam.c
@@ -175,7 +175,7 @@ IndexScanEnd(IndexScanDesc scan)
*/
char *
BuildIndexValueDescription(Relation indexRelation,
- Datum *values, bool *isnull)
+ const Datum *values, const bool *isnull)
{
StringInfoData buf;
Form_pg_index idxrec;
diff --git a/src/backend/access/spgist/spgutils.c b/src/backend/access/spgist/spgutils.c
index 8f32e46fb83..c112e1e5dd4 100644
--- a/src/backend/access/spgist/spgutils.c
+++ b/src/backend/access/spgist/spgutils.c
@@ -788,7 +788,7 @@ memcpyInnerDatum(void *target, SpGistTypeDesc *att, Datum datum)
*/
Size
SpGistGetLeafTupleSize(TupleDesc tupleDescriptor,
- Datum *datums, bool *isnulls)
+ const Datum *datums, const bool *isnulls)
{
Size size;
Size data_size;
@@ -841,7 +841,7 @@ SpGistGetLeafTupleSize(TupleDesc tupleDescriptor,
*/
SpGistLeafTuple
spgFormLeafTuple(SpGistState *state, ItemPointer heapPtr,
- Datum *datums, bool *isnulls)
+ const Datum *datums, const bool *isnulls)
{
SpGistLeafTuple tup;
TupleDesc tupleDescriptor = state->leafTupDesc;
diff --git a/src/backend/access/table/toast_helper.c b/src/backend/access/table/toast_helper.c
index b5cfeb21aab..871ebeeb563 100644
--- a/src/backend/access/table/toast_helper.c
+++ b/src/backend/access/table/toast_helper.c
@@ -316,7 +316,7 @@ toast_tuple_cleanup(ToastTupleContext *ttc)
* relation.
*/
void
-toast_delete_external(Relation rel, Datum *values, bool *isnull,
+toast_delete_external(Relation rel, const Datum *values, const bool *isnull,
bool is_speculative)
{
TupleDesc tupleDesc = rel->rd_att;
diff --git a/src/backend/executor/execIndexing.c b/src/backend/executor/execIndexing.c
index 1d82b64b897..3c6730632de 100644
--- a/src/backend/executor/execIndexing.c
+++ b/src/backend/executor/execIndexing.c
@@ -127,15 +127,15 @@ typedef enum
static bool check_exclusion_or_unique_constraint(Relation heap, Relation index,
IndexInfo *indexInfo,
ItemPointer tupleid,
- Datum *values, bool *isnull,
+ const Datum *values, const bool *isnull,
EState *estate, bool newIndex,
CEOUC_WAIT_MODE waitMode,
bool violationOK,
ItemPointer conflictTid);
-static bool index_recheck_constraint(Relation index, Oid *constr_procs,
- Datum *existing_values, bool *existing_isnull,
- Datum *new_values);
+static bool index_recheck_constraint(Relation index, const Oid *constr_procs,
+ const Datum *existing_values, const bool *existing_isnull,
+ const Datum *new_values);
static bool index_unchanged_by_update(ResultRelInfo *resultRelInfo,
EState *estate, IndexInfo *indexInfo,
Relation indexRelation);
@@ -684,7 +684,7 @@ static bool
check_exclusion_or_unique_constraint(Relation heap, Relation index,
IndexInfo *indexInfo,
ItemPointer tupleid,
- Datum *values, bool *isnull,
+ const Datum *values, const bool *isnull,
EState *estate, bool newIndex,
CEOUC_WAIT_MODE waitMode,
bool violationOK,
@@ -910,7 +910,7 @@ void
check_exclusion_constraint(Relation heap, Relation index,
IndexInfo *indexInfo,
ItemPointer tupleid,
- Datum *values, bool *isnull,
+ const Datum *values, const bool *isnull,
EState *estate, bool newIndex)
{
(void) check_exclusion_or_unique_constraint(heap, index, indexInfo, tupleid,
@@ -924,9 +924,9 @@ check_exclusion_constraint(Relation heap, Relation index,
* exclusion condition against the new_values. Returns true if conflict.
*/
static bool
-index_recheck_constraint(Relation index, Oid *constr_procs,
- Datum *existing_values, bool *existing_isnull,
- Datum *new_values)
+index_recheck_constraint(Relation index, const Oid *constr_procs,
+ const Datum *existing_values, const bool *existing_isnull,
+ const Datum *new_values)
{
int indnkeyatts = IndexRelationGetNumberOfKeyAttributes(index);
int i;
diff --git a/src/backend/executor/execTuples.c b/src/backend/executor/execTuples.c
index fda20ec3183..2c2712ceac3 100644
--- a/src/backend/executor/execTuples.c
+++ b/src/backend/executor/execTuples.c
@@ -2273,7 +2273,7 @@ begin_tup_output_tupdesc(DestReceiver *dest,
* write a single tuple
*/
void
-do_tup_output(TupOutputState *tstate, Datum *values, bool *isnull)
+do_tup_output(TupOutputState *tstate, const Datum *values, const bool *isnull)
{
TupleTableSlot *slot = tstate->slot;
int natts = slot->tts_tupleDescriptor->natts;
diff --git a/src/backend/partitioning/partbounds.c b/src/backend/partitioning/partbounds.c
index 5436cc302d1..9f207b44c37 100644
--- a/src/backend/partitioning/partbounds.c
+++ b/src/backend/partitioning/partbounds.c
@@ -4720,8 +4720,8 @@ get_range_nulltest(PartitionKey key)
* Compute the hash value for given partition key values.
*/
uint64
-compute_partition_hash_value(int partnatts, FmgrInfo *partsupfunc, Oid *partcollation,
- Datum *values, bool *isnull)
+compute_partition_hash_value(int partnatts, FmgrInfo *partsupfunc, const Oid *partcollation,
+ const Datum *values, const bool *isnull)
{
int i;
uint64 rowHash = 0;
diff --git a/src/backend/utils/adt/json.c b/src/backend/utils/adt/json.c
index 55413c0fdf2..71ae53ff975 100644
--- a/src/backend/utils/adt/json.c
+++ b/src/backend/utils/adt/json.c
@@ -1182,7 +1182,7 @@ catenate_stringinfo_string(StringInfo buffer, const char *addon)
}
Datum
-json_build_object_worker(int nargs, Datum *args, bool *nulls, Oid *types,
+json_build_object_worker(int nargs, const Datum *args, const bool *nulls, const Oid *types,
bool absent_on_null, bool unique_keys)
{
int i;
@@ -1295,7 +1295,7 @@ json_build_object_noargs(PG_FUNCTION_ARGS)
}
Datum
-json_build_array_worker(int nargs, Datum *args, bool *nulls, Oid *types,
+json_build_array_worker(int nargs, const Datum *args, const bool *nulls, const Oid *types,
bool absent_on_null)
{
int i;
diff --git a/src/backend/utils/adt/jsonb.c b/src/backend/utils/adt/jsonb.c
index b10a60ac665..6f445f5c2bc 100644
--- a/src/backend/utils/adt/jsonb.c
+++ b/src/backend/utils/adt/jsonb.c
@@ -58,7 +58,7 @@ static void jsonb_put_escaped_value(StringInfo out, JsonbValue *scalarVal);
static JsonParseErrorType jsonb_in_scalar(void *pstate, char *token, JsonTokenType tokentype);
static void composite_to_jsonb(Datum composite, JsonbInState *result);
static void array_dim_to_jsonb(JsonbInState *result, int dim, int ndims, int *dims,
- Datum *vals, bool *nulls, int *valcount,
+ const Datum *vals, const bool *nulls, int *valcount,
JsonTypeCategory tcategory, Oid outfuncoid);
static void array_to_jsonb_internal(Datum array, JsonbInState *result);
static void datum_to_jsonb_internal(Datum val, bool is_null, JsonbInState *result,
@@ -864,8 +864,8 @@ datum_to_jsonb_internal(Datum val, bool is_null, JsonbInState *result,
* ourselves recursively to process the next dimension.
*/
static void
-array_dim_to_jsonb(JsonbInState *result, int dim, int ndims, int *dims, Datum *vals,
- bool *nulls, int *valcount, JsonTypeCategory tcategory,
+array_dim_to_jsonb(JsonbInState *result, int dim, int ndims, int *dims, const Datum *vals,
+ const bool *nulls, int *valcount, JsonTypeCategory tcategory,
Oid outfuncoid)
{
int i;
@@ -1127,7 +1127,7 @@ datum_to_jsonb(Datum val, JsonTypeCategory tcategory, Oid outfuncoid)
}
Datum
-jsonb_build_object_worker(int nargs, Datum *args, bool *nulls, Oid *types,
+jsonb_build_object_worker(int nargs, const Datum *args, const bool *nulls, const Oid *types,
bool absent_on_null, bool unique_keys)
{
int i;
@@ -1212,7 +1212,7 @@ jsonb_build_object_noargs(PG_FUNCTION_ARGS)
}
Datum
-jsonb_build_array_worker(int nargs, Datum *args, bool *nulls, Oid *types,
+jsonb_build_array_worker(int nargs, const Datum *args, const bool *nulls, const Oid *types,
bool absent_on_null)
{
int i;
diff --git a/src/backend/utils/sort/tuplesortvariants.c b/src/backend/utils/sort/tuplesortvariants.c
index 84442a93c5a..2cd508e5130 100644
--- a/src/backend/utils/sort/tuplesortvariants.c
+++ b/src/backend/utils/sort/tuplesortvariants.c
@@ -683,8 +683,8 @@ tuplesort_putheaptuple(Tuplesortstate *state, HeapTuple tup)
*/
void
tuplesort_putindextuplevalues(Tuplesortstate *state, Relation rel,
- ItemPointer self, Datum *values,
- bool *isnull)
+ ItemPointer self, const Datum *values,
+ const bool *isnull)
{
SortTuple stup;
IndexTuple tuple;
diff --git a/src/backend/utils/sort/tuplestore.c b/src/backend/utils/sort/tuplestore.c
index f60633df241..38bbed46049 100644
--- a/src/backend/utils/sort/tuplestore.c
+++ b/src/backend/utils/sort/tuplestore.c
@@ -748,7 +748,7 @@ tuplestore_puttuple(Tuplestorestate *state, HeapTuple tuple)
*/
void
tuplestore_putvalues(Tuplestorestate *state, TupleDesc tdesc,
- Datum *values, bool *isnull)
+ const Datum *values, const bool *isnull)
{
MinimalTuple tuple;
MemoryContext oldcxt = MemoryContextSwitchTo(state->context);
diff --git a/src/include/access/genam.h b/src/include/access/genam.h
index a3087956654..4e626c615e7 100644
--- a/src/include/access/genam.h
+++ b/src/include/access/genam.h
@@ -204,7 +204,7 @@ extern IndexScanDesc RelationGetIndexScan(Relation indexRelation,
int nkeys, int norderbys);
extern void IndexScanEnd(IndexScanDesc scan);
extern char *BuildIndexValueDescription(Relation indexRelation,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
extern TransactionId index_compute_xid_horizon_for_tuples(Relation irel,
Relation hrel,
Buffer ibuf,
diff --git a/src/include/access/gist_private.h b/src/include/access/gist_private.h
index 3edc740a3f3..18c37f0bd89 100644
--- a/src/include/access/gist_private.h
+++ b/src/include/access/gist_private.h
@@ -502,9 +502,9 @@ extern IndexTuple gistgetadjusted(Relation r,
IndexTuple addtup,
GISTSTATE *giststate);
extern IndexTuple gistFormTuple(GISTSTATE *giststate,
- Relation r, Datum *attdata, bool *isnull, bool isleaf);
+ Relation r, const Datum *attdata, const bool *isnull, bool isleaf);
extern void gistCompressValues(GISTSTATE *giststate, Relation r,
- Datum *attdata, bool *isnull, bool isleaf, Datum *compatt);
+ const Datum *attdata, const bool *isnull, bool isleaf, Datum *compatt);
extern OffsetNumber gistchoose(Relation r, Page p,
IndexTuple it,
diff --git a/src/include/access/hash.h b/src/include/access/hash.h
index 9e035270a16..4806ce6c4ea 100644
--- a/src/include/access/hash.h
+++ b/src/include/access/hash.h
@@ -451,7 +451,7 @@ typedef struct HSpool HSpool; /* opaque struct in hashsort.c */
extern HSpool *_h_spoolinit(Relation heap, Relation index, uint32 num_buckets);
extern void _h_spooldestroy(HSpool *hspool);
extern void _h_spool(HSpool *hspool, ItemPointer self,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
extern void _h_indexbuild(HSpool *hspool, Relation heapRel);
/* hashutil.c */
diff --git a/src/include/access/htup_details.h b/src/include/access/htup_details.h
index e01f4f35c8d..6fd87dc108d 100644
--- a/src/include/access/htup_details.h
+++ b/src/include/access/htup_details.h
@@ -696,9 +696,9 @@ struct MinimalTupleData
/* prototypes for functions in common/heaptuple.c */
extern Size heap_compute_data_size(TupleDesc tupleDesc,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
extern void heap_fill_tuple(TupleDesc tupleDesc,
- Datum *values, bool *isnull,
+ const Datum *values, const bool *isnull,
char *data, Size data_size,
uint16 *infomask, bits8 *bit);
extern bool heap_attisnull(HeapTuple tup, int attnum, TupleDesc tupleDesc);
@@ -712,23 +712,23 @@ extern HeapTuple heap_copytuple(HeapTuple tuple);
extern void heap_copytuple_with_tuple(HeapTuple src, HeapTuple dest);
extern Datum heap_copy_tuple_as_datum(HeapTuple tuple, TupleDesc tupleDesc);
extern HeapTuple heap_form_tuple(TupleDesc tupleDescriptor,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
extern HeapTuple heap_modify_tuple(HeapTuple tuple,
TupleDesc tupleDesc,
- Datum *replValues,
- bool *replIsnull,
- bool *doReplace);
+ const Datum *replValues,
+ const bool *replIsnull,
+ const bool *doReplace);
extern HeapTuple heap_modify_tuple_by_cols(HeapTuple tuple,
TupleDesc tupleDesc,
int nCols,
- int *replCols,
- Datum *replValues,
- bool *replIsnull);
+ const int *replCols,
+ const Datum *replValues,
+ const bool *replIsnull);
extern void heap_deform_tuple(HeapTuple tuple, TupleDesc tupleDesc,
Datum *values, bool *isnull);
extern void heap_freetuple(HeapTuple htup);
extern MinimalTuple heap_form_minimal_tuple(TupleDesc tupleDescriptor,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
extern void heap_free_minimal_tuple(MinimalTuple mtup);
extern MinimalTuple heap_copy_minimal_tuple(MinimalTuple mtup);
extern HeapTuple heap_tuple_from_minimal_tuple(MinimalTuple mtup);
diff --git a/src/include/access/itup.h b/src/include/access/itup.h
index 2e2b8c7a470..1d55536dbdf 100644
--- a/src/include/access/itup.h
+++ b/src/include/access/itup.h
@@ -75,9 +75,9 @@ typedef IndexAttributeBitMapData * IndexAttributeBitMap;
/* routines in indextuple.c */
extern IndexTuple index_form_tuple(TupleDesc tupleDescriptor,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
extern IndexTuple index_form_tuple_context(TupleDesc tupleDescriptor,
- Datum *values, bool *isnull,
+ const Datum *values, const bool *isnull,
MemoryContext context);
extern Datum nocache_index_getattr(IndexTuple tup, int attnum,
TupleDesc tupleDesc);
diff --git a/src/include/access/spgist_private.h b/src/include/access/spgist_private.h
index c6ef46fc206..bc39ee45ccf 100644
--- a/src/include/access/spgist_private.h
+++ b/src/include/access/spgist_private.h
@@ -506,10 +506,10 @@ extern void SpGistInitBuffer(Buffer b, uint16 f);
extern void SpGistInitMetapage(Page page);
extern unsigned int SpGistGetInnerTypeSize(SpGistTypeDesc *att, Datum datum);
extern Size SpGistGetLeafTupleSize(TupleDesc tupleDescriptor,
- Datum *datums, bool *isnulls);
+ const Datum *datums, const bool *isnulls);
extern SpGistLeafTuple spgFormLeafTuple(SpGistState *state,
ItemPointer heapPtr,
- Datum *datums, bool *isnulls);
+ const Datum *datums, const bool *isnulls);
extern SpGistNodeTuple spgFormNodeTuple(SpGistState *state,
Datum label, bool isnull);
extern SpGistInnerTuple spgFormInnerTuple(SpGistState *state,
diff --git a/src/include/access/toast_helper.h b/src/include/access/toast_helper.h
index e971bd2c8ef..51a228db402 100644
--- a/src/include/access/toast_helper.h
+++ b/src/include/access/toast_helper.h
@@ -110,7 +110,7 @@ extern void toast_tuple_externalize(ToastTupleContext *ttc, int attribute,
int options);
extern void toast_tuple_cleanup(ToastTupleContext *ttc);
-extern void toast_delete_external(Relation rel, Datum *values, bool *isnull,
+extern void toast_delete_external(Relation rel, const Datum *values, const bool *isnull,
bool is_speculative);
#endif
diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h
index aeebe0e0ff9..e1eefb400b0 100644
--- a/src/include/executor/executor.h
+++ b/src/include/executor/executor.h
@@ -509,7 +509,7 @@ typedef struct TupOutputState
extern TupOutputState *begin_tup_output_tupdesc(DestReceiver *dest,
TupleDesc tupdesc,
const TupleTableSlotOps *tts_ops);
-extern void do_tup_output(TupOutputState *tstate, Datum *values, bool *isnull);
+extern void do_tup_output(TupOutputState *tstate, const Datum *values, const bool *isnull);
extern void do_text_output_multiline(TupOutputState *tstate, const char *txt);
extern void end_tup_output(TupOutputState *tstate);
@@ -639,7 +639,7 @@ extern bool ExecCheckIndexConstraints(ResultRelInfo *resultRelInfo,
extern void check_exclusion_constraint(Relation heap, Relation index,
IndexInfo *indexInfo,
ItemPointer tupleid,
- Datum *values, bool *isnull,
+ const Datum *values, const bool *isnull,
EState *estate, bool newIndex);
/*
diff --git a/src/include/partitioning/partbounds.h b/src/include/partitioning/partbounds.h
index d2e01f92dfe..53bcc867df7 100644
--- a/src/include/partitioning/partbounds.h
+++ b/src/include/partitioning/partbounds.h
@@ -100,8 +100,8 @@ typedef struct PartitionBoundInfoData
extern int get_hash_partition_greatest_modulus(PartitionBoundInfo bound);
extern uint64 compute_partition_hash_value(int partnatts, FmgrInfo *partsupfunc,
- Oid *partcollation,
- Datum *values, bool *isnull);
+ const Oid *partcollation,
+ const Datum *values, const bool *isnull);
extern List *get_qual_from_partbound(Relation parent,
PartitionBoundSpec *spec);
extern PartitionBoundInfo partition_bounds_create(PartitionBoundSpec **boundspecs,
diff --git a/src/include/utils/json.h b/src/include/utils/json.h
index 35a9a5545d8..f07e82c8327 100644
--- a/src/include/utils/json.h
+++ b/src/include/utils/json.h
@@ -21,11 +21,11 @@ extern void escape_json(StringInfo buf, const char *str);
extern char *JsonEncodeDateTime(char *buf, Datum value, Oid typid,
const int *tzp);
extern bool to_json_is_immutable(Oid typoid);
-extern Datum json_build_object_worker(int nargs, Datum *args, bool *nulls,
- Oid *types, bool absent_on_null,
+extern Datum json_build_object_worker(int nargs, const Datum *args, const bool *nulls,
+ const Oid *types, bool absent_on_null,
bool unique_keys);
-extern Datum json_build_array_worker(int nargs, Datum *args, bool *nulls,
- Oid *types, bool absent_on_null);
+extern Datum json_build_array_worker(int nargs, const Datum *args, const bool *nulls,
+ const Oid *types, bool absent_on_null);
extern bool json_validate(text *json, bool check_unique_keys, bool throw_error);
#endif /* JSON_H */
diff --git a/src/include/utils/jsonb.h b/src/include/utils/jsonb.h
index 649a1644f24..e62a5f2f442 100644
--- a/src/include/utils/jsonb.h
+++ b/src/include/utils/jsonb.h
@@ -430,10 +430,10 @@ extern Datum jsonb_set_element(Jsonb *jb, Datum *path, int path_len,
extern Datum jsonb_get_element(Jsonb *jb, Datum *path, int npath,
bool *isnull, bool as_text);
extern bool to_jsonb_is_immutable(Oid typoid);
-extern Datum jsonb_build_object_worker(int nargs, Datum *args, bool *nulls,
- Oid *types, bool absent_on_null,
+extern Datum jsonb_build_object_worker(int nargs, const Datum *args, const bool *nulls,
+ const Oid *types, bool absent_on_null,
bool unique_keys);
-extern Datum jsonb_build_array_worker(int nargs, Datum *args, bool *nulls,
- Oid *types, bool absent_on_null);
+extern Datum jsonb_build_array_worker(int nargs, const Datum *args, const bool *nulls,
+ const Oid *types, bool absent_on_null);
#endif /* __JSONB_H__ */
diff --git a/src/include/utils/tuplesort.h b/src/include/utils/tuplesort.h
index 3f71c70f175..3a49a6d2d4d 100644
--- a/src/include/utils/tuplesort.h
+++ b/src/include/utils/tuplesort.h
@@ -437,7 +437,7 @@ extern void tuplesort_puttupleslot(Tuplesortstate *state,
extern void tuplesort_putheaptuple(Tuplesortstate *state, HeapTuple tup);
extern void tuplesort_putindextuplevalues(Tuplesortstate *state,
Relation rel, ItemPointer self,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
extern void tuplesort_putdatum(Tuplesortstate *state, Datum val,
bool isNull);
diff --git a/src/include/utils/tuplestore.h b/src/include/utils/tuplestore.h
index 36424b80b1b..1077c5fdeaa 100644
--- a/src/include/utils/tuplestore.h
+++ b/src/include/utils/tuplestore.h
@@ -54,7 +54,7 @@ extern void tuplestore_puttupleslot(Tuplestorestate *state,
TupleTableSlot *slot);
extern void tuplestore_puttuple(Tuplestorestate *state, HeapTuple tuple);
extern void tuplestore_putvalues(Tuplestorestate *state, TupleDesc tdesc,
- Datum *values, bool *isnull);
+ const Datum *values, const bool *isnull);
/* Backwards compatibility macro */
#define tuplestore_donestoring(state) ((void) 0)