*/
while ((tup = tuplesort_getgintuple(state->bs_sortstate, &tuplen, true)) != NULL)
{
+ MemoryContext oldCtx;
+
CHECK_FOR_INTERRUPTS();
/*
*/
AssertCheckItemPointers(buffer);
+ oldCtx = MemoryContextSwitchTo(state->tmpCtx);
+
ginEntryInsert(&state->ginstate,
buffer->attnum, buffer->key, buffer->category,
buffer->items, buffer->nitems, &state->buildStats);
+ MemoryContextSwitchTo(oldCtx);
+ MemoryContextReset(state->tmpCtx);
+
/* discard the existing data */
GinBufferReset(buffer);
}
*/
AssertCheckItemPointers(buffer);
+ oldCtx = MemoryContextSwitchTo(state->tmpCtx);
+
ginEntryInsert(&state->ginstate,
buffer->attnum, buffer->key, buffer->category,
buffer->items, buffer->nfrozen, &state->buildStats);
+ MemoryContextSwitchTo(oldCtx);
+ MemoryContextReset(state->tmpCtx);
+
/* truncate the data we've just discarded */
GinBufferTrim(buffer);
}