BUG #17542: tsquery returns incorrect results with nested, conjuncted followed-by operators

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: jordanthelewis(at)gmail(dot)com
Subject: BUG #17542: tsquery returns incorrect results with nested, conjuncted followed-by operators
Date: 2022-07-09 01:35:42
Message-ID: 17542-69860f66186a43e4@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 17542
Logged by: Jordan Lewis
Email address: jordanthelewis(at)gmail(dot)com
PostgreSQL version: 14.3
Operating system: Linux
Description:

Consider the following query:

jordan=> select '((a <2> c) & (b <-> c)) <-> d'::tsquery @@ 'a:1 b:2 c:3
d:4';
?column?
----------
f
(1 row)

I think this should return "true", because both of the expressions on the
left-hand-side of the outer <-> operator of the tsquery do in fact precede
the "d" term in the tsvector.

Here is output that shows this:

jordan=> select '((a <2> c)) <-> d'::tsquery @@ 'a:1 b:2 c:3 d:4';
?column?
----------
t
(1 row)

jordan=> select '((b <-> c)) <-> d'::tsquery @@ 'a:1 b:2 c:3 d:4';
?column?
----------
t
(1 row)

I think things go wrong in the query executor because the two LHS clauses
have different widths.

Do you agree that this is incorrect output?

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message PG Bug reporting form 2022-07-09 16:08:02 BUG #17543: CSVLOG malformed from disk space error
Previous Message Michael Paquier 2022-07-07 22:38:49 Re: BUG #17448: In Windows 10, version 1703 and later, huge_pages doesn't work.