"Dennis Noordsij" <dennis.noordsij@helsinki.fi> writes:
> create table foo ( ts tsvector not null );
> create index foo_idx on foo using gin(ts);
> insert into foo values (to_tsvector('Lore ipsum'));
> select * from foo where 'ipsu:*'::tsquery @@ ts;
> [crash]
Hmm. It rather looks to me like this
cmp = DatumGetInt32(FunctionCall4(&ginstate->comparePartialFn[attrnum],
should be this
cmp = DatumGetInt32(FunctionCall4(&ginstate->comparePartialFn[attrnum-1],
which leaves me with even less of a warm and fuzzy feeling about
matchPartialInPendingList() than I had before. How much has that code
been tested at all? It seems quite clear that it's not exercised by
any regression test ...
regards, tom lane