"Pierre Ducroquet" <p.psql@pinaraf.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