Change the way the offset of downlink is stored in GISTInsertStack.
GISTInsertStack.childoffnum used to mean "offset of the downlink in this
node, pointing to the child node in the stack". It's now replaced with
downlinkoffnum, which means "offset of the downlink in the parent of this
node". gistFindPath() already used childoffnum with this new meaning, and
had an extra step at the end to pull all the childoffnum values down one
node in the stack, to adjust the stack for the meaning that childoffnum had
elsewhere. That's no longer required.
The reason to do this now is this new representation is more convenient for
the GiST fast build patch that Alexander Korotkov is working on.
While we're at it, replace the linked list used in gistFindPath with a
standard List, and make gistFindPath() static.
Alexander Korotkov, with some changes by me.
src/backend/access/gist/gist.c | 92 ++++++++++++++++---------------------
src/include/access/gist_private.h | 9 +---
2 files changed, 41 insertions(+), 60 deletions(-)
pgsql-committers by date
|Next:||From: User Masao_fujii||Date: 2011-07-15 13:48:03|
|Subject: pgbulkload - pgbulkload: Update pg_bulkload.html according to the recent |
|Previous:||From: Heikki Linnakangas||Date: 2011-07-15 08:11:58|
|Subject: pgsql: Fix two ancient bugs in GiST code to re-find a parent afterpage|