Re: GiST: PickSplit and multi-attr indexes - Mailing list pgsql-hackers

From Neil Conway
Subject Re: GiST: PickSplit and multi-attr indexes
Date
Msg-id 1100492090.23420.28.camel@localhost.localdomain
Whole thread Raw
In response to Re: GiST: PickSplit and multi-attr indexes  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: GiST: PickSplit and multi-attr indexes  (Oleg Bartunov <oleg@sai.msu.su>)
Re: GiST: PickSplit and multi-attr indexes  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Sun, 2004-11-14 at 18:54 -0500, Tom Lane wrote:
> It's probably just a hangover from the days when GiST didn't support
> multi-column indexes at all.  I agree it should be changed.

I'm not sure the right way to fix it (at least without significant
changes to the GiST API). At present, the PickSplit() method is passed a
vector of GISTENTRYs and fills in a GIST_SPLITVEC. The GISTENTRYs
correspond to the first attributes of all the tuples in the node to be
split. There is no provision for the GiST extension to be informed about
any additional attributes in the index tuples. Even if we changed the
API to allow that, the GiST extension would have a hard time making a
reasonable decision in the multi-attribute case: the additional index
attributes could well be implemented using a different GiST extension.

> But note you will then have to cope with NULL values.

Yes -- I'm not sure offhand why GiST does not allow leading NULL values
in index attributes, but that ought to be fixed anyway.

-Neil




pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: psql \e broken again
Next
From: joseph speigle
Date:
Subject: Re: psql \e broken again