strange behave of fulltext query when query contains negation of prefix - Mailing list pgsql-hackers

From Pavel Stehule
Subject strange behave of fulltext query when query contains negation of prefix
Date
Msg-id CAFj8pRBS1tzAF6QuDBwSG80ncgy5cKGqex0=FcSRvyknhdhxTA@mail.gmail.com
Whole thread Raw
List pgsql-hackers
Hello all

I found little bit strange behave of query search when I try to use
negation of prefix

postgres=# select nazev from obce where to_tsvector('simple',nazev) @@
to_tsquery('simple','skalice');       nazev
----------------------Klášterní SkaliceStříbrná SkaliceSkaliceSkalice u České LípySkaliceČeská SkaliceSkalice nad
SvitavouSkalice
(8 rows)

Second result is without word "české, česká", and it is correct

postgres=# select nazev from obce where to_tsvector('simple',nazev) @@
to_tsquery('simple','skalice & !(česká | české)');       nazev
----------------------Klášterní SkaliceStříbrná SkaliceSkaliceSkaliceSkalice nad SvitavouSkalice
(6 rows)

but when I try to reduce query with prefix search, then I get unexpected result

postgres=# select nazev from obce where to_tsvector('simple',nazev) @@
to_tsquery('simple','skalice & !čes:*');nazev
-------
(0 rows)

It is expected??

Regards

Pavel



pgsql-hackers by date:

Previous
From: Alexander Korotkov
Date:
Subject: Re: WIP: store additional info in GIN index
Next
From: Tom Lane
Date:
Subject: Re: pgcrypto seeding problem when ssl=on