Skip to content

Commit ea268cd

Browse files
committed
Add macros to make AllocSetContextCreate() calls simpler and safer.
I found that half a dozen (nearly 5%) of our AllocSetContextCreate calls had typos in the context-sizing parameters. While none of these led to especially significant problems, they did create minor inefficiencies, and it's now clear that expecting people to copy-and-paste those calls accurately is not a great idea. Let's reduce the risk of future errors by introducing single macros that encapsulate the common use-cases. Three such macros are enough to cover all but two special-purpose contexts; those two calls can be left as-is, I think. While this patch doesn't in itself improve matters for third-party extensions, it doesn't break anything for them either, and they can gradually adopt the simplified notation over time. In passing, change TopMemoryContext to use the default allocation parameters. Formerly it could only be extended 8K at a time. That was probably reasonable when this code was written; but nowadays we create many more contexts than we did then, so that it's not unusual to have a couple hundred K in TopMemoryContext, even without considering various dubious code that sticks other things there. There seems no good reason not to let it use growing blocks like most other contexts. Back-patch to 9.6, mostly because that's still close enough to HEAD that it's easy to do so, and keeping the branches in sync can be expected to avoid some future back-patching pain. The bugs fixed by these changes don't seem to be significant enough to justify fixing them further back. Discussion: <21072.1472321324@sss.pgh.pa.us>
1 parent 26fa446 commit ea268cd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

99 files changed

+206
-522
lines changed

contrib/bloom/blinsert.c

+2-6
Original file line numberDiff line numberDiff line change
@@ -130,9 +130,7 @@ blbuild(Relation heap, Relation index, IndexInfo *indexInfo)
130130
initBloomState(&buildstate.blstate, index);
131131
buildstate.tmpCtx = AllocSetContextCreate(CurrentMemoryContext,
132132
"Bloom build temporary context",
133-
ALLOCSET_DEFAULT_MINSIZE,
134-
ALLOCSET_DEFAULT_INITSIZE,
135-
ALLOCSET_DEFAULT_MAXSIZE);
133+
ALLOCSET_DEFAULT_SIZES);
136134
initCachedPage(&buildstate);
137135

138136
/* Do the heap scan */
@@ -204,9 +202,7 @@ blinsert(Relation index, Datum *values, bool *isnull,
204202

205203
insertCtx = AllocSetContextCreate(CurrentMemoryContext,
206204
"Bloom insert temporary context",
207-
ALLOCSET_DEFAULT_MINSIZE,
208-
ALLOCSET_DEFAULT_INITSIZE,
209-
ALLOCSET_DEFAULT_MAXSIZE);
205+
ALLOCSET_DEFAULT_SIZES);
210206

211207
oldCtx = MemoryContextSwitchTo(insertCtx);
212208

contrib/dblink/dblink.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -980,9 +980,7 @@ materializeQueryResult(FunctionCallInfo fcinfo,
980980
/* Create short-lived memory context for data conversions */
981981
sinfo.tmpcontext = AllocSetContextCreate(CurrentMemoryContext,
982982
"dblink temporary context",
983-
ALLOCSET_DEFAULT_MINSIZE,
984-
ALLOCSET_DEFAULT_INITSIZE,
985-
ALLOCSET_DEFAULT_MAXSIZE);
983+
ALLOCSET_DEFAULT_SIZES);
986984

987985
/* execute query, collecting any tuples into the tuplestore */
988986
res = storeQueryResult(&sinfo, conn, sql);

contrib/file_fdw/file_fdw.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -1061,9 +1061,7 @@ file_acquire_sample_rows(Relation onerel, int elevel,
10611061
*/
10621062
tupcontext = AllocSetContextCreate(CurrentMemoryContext,
10631063
"file_fdw temporary context",
1064-
ALLOCSET_DEFAULT_MINSIZE,
1065-
ALLOCSET_DEFAULT_INITSIZE,
1066-
ALLOCSET_DEFAULT_MAXSIZE);
1064+
ALLOCSET_DEFAULT_SIZES);
10671065

10681066
/* Prepare for sampling rows */
10691067
reservoir_init_selection_state(&rstate, targrows);

contrib/pg_trgm/trgm_regexp.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -529,9 +529,7 @@ createTrgmNFA(text *text_re, Oid collation,
529529
*/
530530
tmpcontext = AllocSetContextCreate(CurrentMemoryContext,
531531
"createTrgmNFA temporary context",
532-
ALLOCSET_DEFAULT_MINSIZE,
533-
ALLOCSET_DEFAULT_INITSIZE,
534-
ALLOCSET_DEFAULT_MAXSIZE);
532+
ALLOCSET_DEFAULT_SIZES);
535533
oldcontext = MemoryContextSwitchTo(tmpcontext);
536534

537535
/*

contrib/postgres_fdw/postgres_fdw.c

+5-15
Original file line numberDiff line numberDiff line change
@@ -1315,14 +1315,10 @@ postgresBeginForeignScan(ForeignScanState *node, int eflags)
13151315
/* Create contexts for batches of tuples and per-tuple temp workspace. */
13161316
fsstate->batch_cxt = AllocSetContextCreate(estate->es_query_cxt,
13171317
"postgres_fdw tuple data",
1318-
ALLOCSET_DEFAULT_MINSIZE,
1319-
ALLOCSET_DEFAULT_INITSIZE,
1320-
ALLOCSET_DEFAULT_MAXSIZE);
1318+
ALLOCSET_DEFAULT_SIZES);
13211319
fsstate->temp_cxt = AllocSetContextCreate(estate->es_query_cxt,
13221320
"postgres_fdw temporary data",
1323-
ALLOCSET_SMALL_MINSIZE,
1324-
ALLOCSET_SMALL_INITSIZE,
1325-
ALLOCSET_SMALL_MAXSIZE);
1321+
ALLOCSET_SMALL_SIZES);
13261322

13271323
/*
13281324
* Get info we'll need for converting data fetched from the foreign server
@@ -1695,9 +1691,7 @@ postgresBeginForeignModify(ModifyTableState *mtstate,
16951691
/* Create context for per-tuple temp workspace. */
16961692
fmstate->temp_cxt = AllocSetContextCreate(estate->es_query_cxt,
16971693
"postgres_fdw temporary data",
1698-
ALLOCSET_SMALL_MINSIZE,
1699-
ALLOCSET_SMALL_INITSIZE,
1700-
ALLOCSET_SMALL_MAXSIZE);
1694+
ALLOCSET_SMALL_SIZES);
17011695

17021696
/* Prepare for input conversion of RETURNING results. */
17031697
if (fmstate->has_returning)
@@ -2294,9 +2288,7 @@ postgresBeginDirectModify(ForeignScanState *node, int eflags)
22942288
/* Create context for per-tuple temp workspace. */
22952289
dmstate->temp_cxt = AllocSetContextCreate(estate->es_query_cxt,
22962290
"postgres_fdw temporary data",
2297-
ALLOCSET_SMALL_MINSIZE,
2298-
ALLOCSET_SMALL_INITSIZE,
2299-
ALLOCSET_SMALL_MAXSIZE);
2291+
ALLOCSET_SMALL_SIZES);
23002292

23012293
/* Prepare for input conversion of RETURNING results. */
23022294
if (dmstate->has_returning)
@@ -3481,9 +3473,7 @@ postgresAcquireSampleRowsFunc(Relation relation, int elevel,
34813473
astate.anl_cxt = CurrentMemoryContext;
34823474
astate.temp_cxt = AllocSetContextCreate(CurrentMemoryContext,
34833475
"postgres_fdw temporary data",
3484-
ALLOCSET_SMALL_MINSIZE,
3485-
ALLOCSET_SMALL_INITSIZE,
3486-
ALLOCSET_SMALL_MAXSIZE);
3476+
ALLOCSET_SMALL_SIZES);
34873477

34883478
/*
34893479
* Get the connection to use. We do the remote access as the table's

contrib/sepgsql/uavc.c

+2-4
Original file line numberDiff line numberDiff line change
@@ -498,13 +498,11 @@ sepgsql_avc_init(void)
498498
int rc;
499499

500500
/*
501-
* All the avc stuff shall be allocated on avc_mem_cxt
501+
* All the avc stuff shall be allocated in avc_mem_cxt
502502
*/
503503
avc_mem_cxt = AllocSetContextCreate(TopMemoryContext,
504504
"userspace access vector cache",
505-
ALLOCSET_DEFAULT_MINSIZE,
506-
ALLOCSET_DEFAULT_INITSIZE,
507-
ALLOCSET_DEFAULT_MAXSIZE);
505+
ALLOCSET_DEFAULT_SIZES);
508506
memset(avc_slots, 0, sizeof(avc_slots));
509507
avc_num_caches = 0;
510508
avc_lru_hint = 0;

contrib/test_decoding/test_decoding.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,7 @@ pg_decode_startup(LogicalDecodingContext *ctx, OutputPluginOptions *opt,
102102
data = palloc0(sizeof(TestDecodingData));
103103
data->context = AllocSetContextCreate(ctx->context,
104104
"text conversion context",
105-
ALLOCSET_DEFAULT_MINSIZE,
106-
ALLOCSET_DEFAULT_INITSIZE,
107-
ALLOCSET_DEFAULT_MAXSIZE);
105+
ALLOCSET_DEFAULT_SIZES);
108106
data->include_xids = true;
109107
data->include_timestamp = false;
110108
data->skip_empty_xacts = false;

src/backend/access/brin/brin.c

+4-12
Original file line numberDiff line numberDiff line change
@@ -165,9 +165,7 @@ brininsert(Relation idxRel, Datum *values, bool *nulls,
165165
bdesc = brin_build_desc(idxRel);
166166
tupcxt = AllocSetContextCreate(CurrentMemoryContext,
167167
"brininsert cxt",
168-
ALLOCSET_DEFAULT_MINSIZE,
169-
ALLOCSET_DEFAULT_INITSIZE,
170-
ALLOCSET_DEFAULT_MAXSIZE);
168+
ALLOCSET_DEFAULT_SIZES);
171169
oldcxt = MemoryContextSwitchTo(tupcxt);
172170
}
173171

@@ -347,9 +345,7 @@ bringetbitmap(IndexScanDesc scan, TIDBitmap *tbm)
347345
*/
348346
perRangeCxt = AllocSetContextCreate(CurrentMemoryContext,
349347
"bringetbitmap cxt",
350-
ALLOCSET_DEFAULT_MINSIZE,
351-
ALLOCSET_DEFAULT_INITSIZE,
352-
ALLOCSET_DEFAULT_MAXSIZE);
348+
ALLOCSET_DEFAULT_SIZES);
353349
oldcxt = MemoryContextSwitchTo(perRangeCxt);
354350

355351
/*
@@ -856,9 +852,7 @@ brin_build_desc(Relation rel)
856852

857853
cxt = AllocSetContextCreate(CurrentMemoryContext,
858854
"brin desc cxt",
859-
ALLOCSET_SMALL_INITSIZE,
860-
ALLOCSET_SMALL_MINSIZE,
861-
ALLOCSET_SMALL_MAXSIZE);
855+
ALLOCSET_SMALL_SIZES);
862856
oldcxt = MemoryContextSwitchTo(cxt);
863857
tupdesc = RelationGetDescr(rel);
864858

@@ -1169,9 +1163,7 @@ union_tuples(BrinDesc *bdesc, BrinMemTuple *a, BrinTuple *b)
11691163
/* Use our own memory context to avoid retail pfree */
11701164
cxt = AllocSetContextCreate(CurrentMemoryContext,
11711165
"brin union",
1172-
ALLOCSET_DEFAULT_MINSIZE,
1173-
ALLOCSET_DEFAULT_INITSIZE,
1174-
ALLOCSET_DEFAULT_MAXSIZE);
1166+
ALLOCSET_DEFAULT_SIZES);
11751167
oldcxt = MemoryContextSwitchTo(cxt);
11761168
db = brin_deform_tuple(bdesc, b);
11771169
MemoryContextSwitchTo(oldcxt);

src/backend/access/brin/brin_tuple.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -367,9 +367,7 @@ brin_new_memtuple(BrinDesc *brdesc)
367367

368368
dtup->bt_context = AllocSetContextCreate(CurrentMemoryContext,
369369
"brin dtuple",
370-
ALLOCSET_DEFAULT_MINSIZE,
371-
ALLOCSET_DEFAULT_INITSIZE,
372-
ALLOCSET_DEFAULT_MAXSIZE);
370+
ALLOCSET_DEFAULT_SIZES);
373371
return dtup;
374372
}
375373

src/backend/access/common/printtup.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,7 @@ printtup_startup(DestReceiver *self, int operation, TupleDesc typeinfo)
135135
*/
136136
myState->tmpcontext = AllocSetContextCreate(CurrentMemoryContext,
137137
"printtup",
138-
ALLOCSET_DEFAULT_MINSIZE,
139-
ALLOCSET_DEFAULT_INITSIZE,
140-
ALLOCSET_DEFAULT_MAXSIZE);
138+
ALLOCSET_DEFAULT_SIZES);
141139

142140
if (PG_PROTOCOL_MAJOR(FrontendProtocol) < 3)
143141
{

src/backend/access/gin/ginbtree.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -348,9 +348,7 @@ ginPlaceToPage(GinBtree btree, GinBtreeStack *stack,
348348
*/
349349
tmpCxt = AllocSetContextCreate(CurrentMemoryContext,
350350
"ginPlaceToPage temporary context",
351-
ALLOCSET_DEFAULT_MINSIZE,
352-
ALLOCSET_DEFAULT_INITSIZE,
353-
ALLOCSET_DEFAULT_MAXSIZE);
351+
ALLOCSET_DEFAULT_SIZES);
354352
oldCxt = MemoryContextSwitchTo(tmpCxt);
355353

356354
if (GinPageIsData(page))

src/backend/access/gin/ginfast.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -808,9 +808,7 @@ ginInsertCleanup(GinState *ginstate, bool full_clean,
808808
*/
809809
opCtx = AllocSetContextCreate(CurrentMemoryContext,
810810
"GIN insert cleanup temporary context",
811-
ALLOCSET_DEFAULT_MINSIZE,
812-
ALLOCSET_DEFAULT_INITSIZE,
813-
ALLOCSET_DEFAULT_MAXSIZE);
811+
ALLOCSET_DEFAULT_SIZES);
814812

815813
oldCtx = MemoryContextSwitchTo(opCtx);
816814

src/backend/access/gin/gininsert.c

+3-9
Original file line numberDiff line numberDiff line change
@@ -372,19 +372,15 @@ ginbuild(Relation heap, Relation index, IndexInfo *indexInfo)
372372
*/
373373
buildstate.tmpCtx = AllocSetContextCreate(CurrentMemoryContext,
374374
"Gin build temporary context",
375-
ALLOCSET_DEFAULT_MINSIZE,
376-
ALLOCSET_DEFAULT_INITSIZE,
377-
ALLOCSET_DEFAULT_MAXSIZE);
375+
ALLOCSET_DEFAULT_SIZES);
378376

379377
/*
380378
* create a temporary memory context that is used for calling
381379
* ginExtractEntries(), and can be reset after each tuple
382380
*/
383381
buildstate.funcCtx = AllocSetContextCreate(CurrentMemoryContext,
384382
"Gin build temporary context for user-defined function",
385-
ALLOCSET_DEFAULT_MINSIZE,
386-
ALLOCSET_DEFAULT_INITSIZE,
387-
ALLOCSET_DEFAULT_MAXSIZE);
383+
ALLOCSET_DEFAULT_SIZES);
388384

389385
buildstate.accum.ginstate = &buildstate.ginstate;
390386
ginInitBA(&buildstate.accum);
@@ -495,9 +491,7 @@ gininsert(Relation index, Datum *values, bool *isnull,
495491

496492
insertCtx = AllocSetContextCreate(CurrentMemoryContext,
497493
"Gin insert temporary context",
498-
ALLOCSET_DEFAULT_MINSIZE,
499-
ALLOCSET_DEFAULT_INITSIZE,
500-
ALLOCSET_DEFAULT_MAXSIZE);
494+
ALLOCSET_DEFAULT_SIZES);
501495

502496
oldCtx = MemoryContextSwitchTo(insertCtx);
503497

src/backend/access/gin/ginscan.c

+2-6
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,10 @@ ginbeginscan(Relation rel, int nkeys, int norderbys)
3838
so->nkeys = 0;
3939
so->tempCtx = AllocSetContextCreate(CurrentMemoryContext,
4040
"Gin scan temporary context",
41-
ALLOCSET_DEFAULT_MINSIZE,
42-
ALLOCSET_DEFAULT_INITSIZE,
43-
ALLOCSET_DEFAULT_MAXSIZE);
41+
ALLOCSET_DEFAULT_SIZES);
4442
so->keyCtx = AllocSetContextCreate(CurrentMemoryContext,
4543
"Gin scan key context",
46-
ALLOCSET_DEFAULT_MINSIZE,
47-
ALLOCSET_DEFAULT_INITSIZE,
48-
ALLOCSET_DEFAULT_MAXSIZE);
44+
ALLOCSET_DEFAULT_SIZES);
4945
initGinState(&so->ginstate, scan->indexRelation);
5046

5147
scan->opaque = so;

src/backend/access/gin/ginvacuum.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -526,9 +526,7 @@ ginbulkdelete(IndexVacuumInfo *info, IndexBulkDeleteResult *stats,
526526

527527
gvs.tmpCxt = AllocSetContextCreate(CurrentMemoryContext,
528528
"Gin vacuum temporary context",
529-
ALLOCSET_DEFAULT_MINSIZE,
530-
ALLOCSET_DEFAULT_INITSIZE,
531-
ALLOCSET_DEFAULT_MAXSIZE);
529+
ALLOCSET_DEFAULT_SIZES);
532530
gvs.index = index;
533531
gvs.callback = callback;
534532
gvs.callback_state = callback_state;

src/backend/access/gin/ginxlog.c

+2-3
Original file line numberDiff line numberDiff line change
@@ -749,13 +749,12 @@ gin_xlog_startup(void)
749749
{
750750
opCtx = AllocSetContextCreate(CurrentMemoryContext,
751751
"GIN recovery temporary context",
752-
ALLOCSET_DEFAULT_MINSIZE,
753-
ALLOCSET_DEFAULT_INITSIZE,
754-
ALLOCSET_DEFAULT_MAXSIZE);
752+
ALLOCSET_DEFAULT_SIZES);
755753
}
756754

757755
void
758756
gin_xlog_cleanup(void)
759757
{
760758
MemoryContextDelete(opCtx);
759+
opCtx = NULL;
761760
}

src/backend/access/gist/gist.c

+2-6
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,7 @@ createTempGistContext(void)
105105
{
106106
return AllocSetContextCreate(CurrentMemoryContext,
107107
"GiST temporary context",
108-
ALLOCSET_DEFAULT_MINSIZE,
109-
ALLOCSET_DEFAULT_INITSIZE,
110-
ALLOCSET_DEFAULT_MAXSIZE);
108+
ALLOCSET_DEFAULT_SIZES);
111109
}
112110

113111
/*
@@ -1411,9 +1409,7 @@ initGISTstate(Relation index)
14111409
/* Create the memory context that will hold the GISTSTATE */
14121410
scanCxt = AllocSetContextCreate(CurrentMemoryContext,
14131411
"GiST scan context",
1414-
ALLOCSET_DEFAULT_MINSIZE,
1415-
ALLOCSET_DEFAULT_INITSIZE,
1416-
ALLOCSET_DEFAULT_MAXSIZE);
1412+
ALLOCSET_DEFAULT_SIZES);
14171413
oldCxt = MemoryContextSwitchTo(scanCxt);
14181414

14191415
/* Create and fill in the GISTSTATE */

src/backend/access/gist/gistscan.c

+2-6
Original file line numberDiff line numberDiff line change
@@ -140,9 +140,7 @@ gistrescan(IndexScanDesc scan, ScanKey key, int nkeys,
140140
/* second time through */
141141
so->queueCxt = AllocSetContextCreate(so->giststate->scanCxt,
142142
"GiST queue context",
143-
ALLOCSET_DEFAULT_MINSIZE,
144-
ALLOCSET_DEFAULT_INITSIZE,
145-
ALLOCSET_DEFAULT_MAXSIZE);
143+
ALLOCSET_DEFAULT_SIZES);
146144
first_time = false;
147145
}
148146
else
@@ -180,9 +178,7 @@ gistrescan(IndexScanDesc scan, ScanKey key, int nkeys,
180178

181179
so->pageDataCxt = AllocSetContextCreate(so->giststate->scanCxt,
182180
"GiST page data context",
183-
ALLOCSET_DEFAULT_MINSIZE,
184-
ALLOCSET_DEFAULT_INITSIZE,
185-
ALLOCSET_DEFAULT_MAXSIZE);
181+
ALLOCSET_DEFAULT_SIZES);
186182
}
187183

188184
/* create new, empty RBTree for search queue */

src/backend/access/heap/rewriteheap.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -258,9 +258,7 @@ begin_heap_rewrite(Relation old_heap, Relation new_heap, TransactionId oldest_xm
258258
*/
259259
rw_cxt = AllocSetContextCreate(CurrentMemoryContext,
260260
"Table rewrite",
261-
ALLOCSET_DEFAULT_MINSIZE,
262-
ALLOCSET_DEFAULT_INITSIZE,
263-
ALLOCSET_DEFAULT_MAXSIZE);
261+
ALLOCSET_DEFAULT_SIZES);
264262
old_cxt = MemoryContextSwitchTo(rw_cxt);
265263

266264
/* Create and fill in the state struct */

src/backend/access/nbtree/nbtree.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -763,9 +763,7 @@ btvacuumscan(IndexVacuumInfo *info, IndexBulkDeleteResult *stats,
763763
/* Create a temporary memory context to run _bt_pagedel in */
764764
vstate.pagedelcontext = AllocSetContextCreate(CurrentMemoryContext,
765765
"_bt_pagedel",
766-
ALLOCSET_DEFAULT_MINSIZE,
767-
ALLOCSET_DEFAULT_INITSIZE,
768-
ALLOCSET_DEFAULT_MAXSIZE);
766+
ALLOCSET_DEFAULT_SIZES);
769767

770768
/*
771769
* The outer loop iterates over all index pages except the metapage, in

src/backend/access/nbtree/nbtutils.c

+2-4
Original file line numberDiff line numberDiff line change
@@ -232,10 +232,8 @@ _bt_preprocess_array_keys(IndexScanDesc scan)
232232
*/
233233
if (so->arrayContext == NULL)
234234
so->arrayContext = AllocSetContextCreate(CurrentMemoryContext,
235-
"BTree Array Context",
236-
ALLOCSET_SMALL_MINSIZE,
237-
ALLOCSET_SMALL_INITSIZE,
238-
ALLOCSET_SMALL_MAXSIZE);
235+
"BTree array context",
236+
ALLOCSET_SMALL_SIZES);
239237
else
240238
MemoryContextReset(so->arrayContext);
241239

src/backend/access/spgist/spginsert.c

+2-6
Original file line numberDiff line numberDiff line change
@@ -134,9 +134,7 @@ spgbuild(Relation heap, Relation index, IndexInfo *indexInfo)
134134

135135
buildstate.tmpCtx = AllocSetContextCreate(CurrentMemoryContext,
136136
"SP-GiST build temporary context",
137-
ALLOCSET_DEFAULT_MINSIZE,
138-
ALLOCSET_DEFAULT_INITSIZE,
139-
ALLOCSET_DEFAULT_MAXSIZE);
137+
ALLOCSET_DEFAULT_SIZES);
140138

141139
reltuples = IndexBuildHeapScan(heap, index, indexInfo, true,
142140
spgistBuildCallback, (void *) &buildstate);
@@ -213,9 +211,7 @@ spginsert(Relation index, Datum *values, bool *isnull,
213211

214212
insertCtx = AllocSetContextCreate(CurrentMemoryContext,
215213
"SP-GiST insert temporary context",
216-
ALLOCSET_DEFAULT_MINSIZE,
217-
ALLOCSET_DEFAULT_INITSIZE,
218-
ALLOCSET_DEFAULT_MAXSIZE);
214+
ALLOCSET_DEFAULT_SIZES);
219215
oldCtx = MemoryContextSwitchTo(insertCtx);
220216

221217
initSpGistState(&spgstate, index);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy