On Sat, Dec 05, 2009 at 09:54:58AM -0500, Merlin Moncure wrote:
> GIN is a pretty heavy price to pay for something that should be btree
> indexable. Also note he is using a multi column index with array as
> second column...that would be pretty awkward with GIN.
Yup, sounds as though it's not going to work here. I was mainly
suggesting it as it's working now, as opposed to something that
could/should be made to work.
> Normalizing the data loses the nice property of being able to order
> the entire structure using a single index. He's using the array as if
> it was a string...it's basically an optimization.
Hum, not sure why this didn't come up already: what about having an
index on (type,(array_to_string(ident,'##')) and relying on the already
existing optimizations for string prefixes. Not sure what sort of
values can be used in "ident", but it could work.
--
Sam http://samason.me.uk/