Re: [sqlsmith] Failed assertion in TS_phrase_execute

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Oleg Bartunov <obartunov(at)gmail(dot)com>, Teodor Sigaev <teodor(at)sigaev(dot)ru>
Cc: Andreas Seltenreich <seltenreich(at)gmx(dot)de>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [sqlsmith] Failed assertion in TS_phrase_execute
Date: 2016-11-26 22:33:56
Message-ID: 24331.1480199636@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> but I notice that some normalization seems to be getting done by
> tsqueryin:

> regression=# select $$( 'sanct' & 'peter' ) <-> ( 'sanct' & 'peter' )$$::tsquery;
> tsquery

> --------------------------------------------------------------------------------
> -------
> 'sanct' <-> 'sanct' & 'peter' <-> 'sanct' & 'sanct' <-> 'peter' & 'peter' <-> '
> peter'
> (1 row)

BTW, it seems like that normalization is wrong. The transformed query
should (and does) match the string "sanct sanct peter sanct sanct peter
peter peter", since each of the <-> pairs has a match somewhere in there.
But I would expect the original query to be specifying that a match occurs
at exactly one place, which of course is unsatisfiable since 'sanct' and
'peter' can't match the same word.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Fetter 2016-11-27 00:16:48 pg_config --version
Previous Message Jim Nasby 2016-11-26 22:13:19 Re: Alternative MATERIALIZED VIEW design and implementation with history table and other features