Scan Keys - Mailing list pgsql-hackers

From Greg Stark
Subject Scan Keys
Date
Msg-id 87odw4oxdm.fsf@stark.xeocode.com
Whole thread Raw
Responses Re: Scan Keys  (Martijn van Oosterhout <kleptog@svana.org>)
Re: Scan Keys  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
I'm a bit confused about how scan keys work. Is there any simple way given a
list of Datums of the same type as the index tuple attributes to get all
matching index entries? This is for a non-system index.

It seems like the only place in the code where non-system index lookups are
done is nodeIndexscan.c where it has the strategy number, subtype, and
function to use from the work that's previously been done on the expression.

But I want to do something more like what btree does inside btinsert where it
knows that no cross-type functions could be necessary and the only function of
interest is equality.

I tried just using index_getprocinfo(...,BTORDER) with InvalidStrategy like
btree does but _bt_preprocess_keys runs into problems without a valid strategy
number. And in any case that would be btree specific which seems like it ought
not be necessary.

-- 
greg



pgsql-hackers by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: update/insert,
Next
From: Greg Stark
Date:
Subject: Re: binds only for s,u,i,d?