summaryrefslogtreecommitdiff
path: root/src/backend/access/gist/gistget.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/access/gist/gistget.c')
-rw-r--r--src/backend/access/gist/gistget.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/backend/access/gist/gistget.c b/src/backend/access/gist/gistget.c
index afff55c788..56921cfee0 100644
--- a/src/backend/access/gist/gistget.c
+++ b/src/backend/access/gist/gistget.c
@@ -70,9 +70,10 @@ gistindex_keytest(IndexScanDesc scan,
{
int i;
+ if (GistPageIsLeaf(page)) /* shouldn't happen */
+ elog(ERROR, "invalid GIST tuple found on leaf page");
for (i = 0; i < scan->numberOfOrderBys; i++)
so->distances[i] = -get_float8_infinity();
- *recheck_p = true; /* probably unnecessary */
return true;
}
@@ -403,6 +404,8 @@ getNextGISTSearchItem(GISTScanOpaque so)
{
/* Delink item from chain */
so->curTreeItem->head = item->next;
+ if (item == so->curTreeItem->lastHeap)
+ so->curTreeItem->lastHeap = NULL;
/* Return item; caller is responsible to pfree it */
return item;
}