Re: Should phraseto_tsquery('simple', 'blue blue') @@ to_tsvector('simple', 'blue') be true ?
От | Oleg Bartunov |
---|---|
Тема | Re: Should phraseto_tsquery('simple', 'blue blue') @@ to_tsvector('simple', 'blue') be true ? |
Дата | |
Msg-id | CAF4Au4zykVx3gjpVFkzZSRynijGckGfwn1JY7QNvCYChj1=2Hg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Should phraseto_tsquery('simple', 'blue blue') @@ to_tsvector('simple', 'blue') be true ? (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Should phraseto_tsquery('simple', 'blue blue') @@ to_tsvector('simple', 'blue') be true ?
|
Список | pgsql-hackers |
On Wed, Jun 8, 2016 at 8:12 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > Another thing I noticed: if you test with tsvectors that don't contain > position info, <-> seems to reduce to &, that is it doesn't enforce > relative position: > > regression=# select 'cat bat fat rat'::tsvector @@ 'cat <-> rat'::tsquery; > ?column? > ---------- > t > (1 row) > > regression=# select 'rat cat bat fat'::tsvector @@ 'cat <-> rat'::tsquery; > ?column? > ---------- > t > (1 row) yes, that's documented behaviour. > > I'm doubtful that this is a good behavior, because it seems like it can > silently mask mistakes. That is, applying <-> to a stripped tsvector > seems like user error to me. Actually throwing an error might be too > much, but perhaps we should make such cases return false not true? it's question of convention. Probably, returning false will quickly indicate user on his error, so such behaviour looks better. > > (This is against HEAD, without the patch I suggested yesterday. > It strikes me that that patch might change this behavior, if the > lexemes are all being treated as having position zero, but I have > not checked.) I didn't see the patch yet. > > regards, tom lane
В списке pgsql-hackers по дате отправления: