Skip site navigation (1) Skip section navigation (2)

Re: BUG #6232: hstore operator ? no longer uses indexes

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Pierre Ducroquet" <p(dot)psql(at)pinaraf(dot)info>
Cc: pgsql-bugs(at)postgresql(dot)org, Peter Eisentraut <peter_e(at)gmx(dot)net>
Subject: Re: BUG #6232: hstore operator ? no longer uses indexes
Date: 2011-09-29 02:42:55
Message-ID: 13745.1317264175@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-bugs
"Pierre Ducroquet" <p(dot)psql(at)pinaraf(dot)info> writes:
> [ the "hstore ? text" operator no longer matches an hstore GIST index ]

Hmm ... this doesn't seem to be specific to either hstore or GIST; it's
a collation problem.  The index is marked as having no collation, which
is reasonable since hstore is a collation-less type.  However, the ?
OpExpr gets marked as having "default" collation because it has one
collatable input, namely the text constant.  And then,
match_clause_to_indexcol decides the clause doesn't match the index.

Not sure what to do about this.  Is it okay to suppose that collation
can be ignored when matching to a collation-less index?  If not, what's
the correct rule?  I don't like the idea of concluding that hstore has
to be forcibly assigned a collation just because it has some operators
that accept text ...

			regards, tom lane

In response to

Responses

pgsql-bugs by date

Next:From: Peter EisentrautDate: 2011-09-29 03:22:48
Subject: Re: BUG #6232: hstore operator ? no longer uses indexes
Previous:From: Vikas MehtaDate: 2011-09-28 22:22:12
Subject: BUG #6234: Memory leak from PQexec

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group