updated GiST patch - Mailing list pgsql-patches

From Neil Conway
Subject updated GiST patch
Date
Msg-id 42883140.6010007@samurai.com
Whole thread Raw
Responses Re: updated GiST patch
List pgsql-patches
This is an updated version of the GiST patch I posted a few months ago.
As before, it makes the following changes:

- ensure that all user-supplied GiST methods are invoked in a
short-lived memory context. Therefore, explicitly releasing palloc'ed
memory via pfree is unnecessary (and probably results in worse
performance). This lowers the barrier to entry for writing GiST-based
indexes.

- change GiST so that we keep a pin on a scan's current buffer, rather
than doing ReadBuffer() for each tuple produced by the scan.
ReadBuffer() is relatively expensive, so this is a win.

- the previous change makes it pretty easy to implement dead tuple
killing for GiST (which means that all the builtin indexes now do this).

The patch also cleans up a lot of pretty ugly code in GiST. AFAIK all
existing GiST-based indexes should continue to work unchanged -- the
regression tests for all the contrib/ indexes pass, at any rate.

Barring any objections I'll apply this to HEAD tomorrow or the day after.

-Neil

Attachment

pgsql-patches by date:

Previous
From: "Qingqing Zhou"
Date:
Subject: Minor comments typo fix in src/port
Next
From: Neil Conway
Date:
Subject: Re: Minor comments typo fix in src/port