Re: [sqlsmith] Failed assertion in TS_phrase_execute

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: [sqlsmith] Failed assertion in TS_phrase_execute
Дата
Msg-id 14732.1480186277@sss.pgh.pa.us
обсуждение исходный текст
Ответ на [sqlsmith] Failed assertion in TS_phrase_execute  (Andreas Seltenreich <seltenreich@gmx.de>)
Ответы Re: [sqlsmith] Failed assertion in TS_phrase_execute
Список pgsql-hackers
Andreas Seltenreich <seltenreich@gmx.de> writes:
> the query below triggers an assertion in TS_phrase_execute.  Testing was
> done on master at dbdfd11.

> -- TRAP: FailedAssertion("!(curitem->qoperator.oper == 4)", File: "tsvector_op.c", Line: 1432)

> select 'moscow' @@
>        ts_rewrite('moscow', 'moscow',
>           ts_rewrite(
>          tsquery_phrase('moscow','moscow'),
>          'moscow',
>          $$ 'sanct' & 'peter'$$));

Hmm.  If you run the ts_rewrite alone, it prints

regression=# select  ts_rewrite('moscow', 'moscow',         ts_rewrite(    tsquery_phrase('moscow','moscow'),
'moscow',   $$ 'sanct' & 'peter'$$));                  ts_rewrite                     
-------------------------------------------------( 'sanct' & 'peter' ) <-> ( 'sanct' & 'peter' )
(1 row)

and if you put that in explicitly, all's well:

regression=# select 'moscow' @@ $$( 'sanct' & 'peter' ) <-> ( 'sanct' & 'peter' )$$::tsquery;?column?
----------f
(1 row)

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)

so this seems to boil down to ts_rewrite failing to apply required
normalization.  Or maybe the normalization shouldn't be required.
        regards, tom lane



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: Skipping PgStat_FunctionCallUsage for many expressions
Следующее
От: Robert Haas
Дата:
Сообщение: Re: Parallel bitmap heap scan