pgsql: More GIN refactoring.

From: Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: More GIN refactoring.
Date: 2013-11-27 13:46:54
Message-ID: E1VlfSA-000487-Ft@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

More GIN refactoring.

Separate the insertion payload from the more static portions of GinBtree.
GinBtree now only contains information related to searching the tree, and
the information of what to insert is passed separately.

Add root block number to GinBtree, instead of passing it around all the
functions as argument.

Split off ginFinishSplit() from ginInsertValue(). ginFinishSplit is
responsible for finding the parent and inserting the downlink to it.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/ce5326eed386959aac7a322880896ddeade7fd52

Modified Files
--------------
src/backend/access/gin/ginbtree.c | 182 ++++++++++++++++++++-------------
src/backend/access/gin/gindatapage.c | 168 ++++++++++++++++--------------
src/backend/access/gin/ginentrypage.c | 96 +++++++++--------
src/backend/access/gin/ginget.c | 2 +-
src/backend/access/gin/gininsert.c | 11 +-
src/backend/access/gin/ginxlog.c | 22 ++--
src/include/access/gin_private.h | 46 ++++++---
7 files changed, 309 insertions(+), 218 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Heikki Linnakangas 2013-11-27 17:24:00 pgsql: Get rid of the post-recovery cleanup step of GIN page splits.
Previous Message Heikki Linnakangas 2013-11-27 12:25:36 pgsql: Fix plpython3 expected output.