Thread: tsvector_eq appears to be inconsistent.

tsvector_eq appears to be inconsistent.

From
"Rajesh Kumar Mallah"
Date:
Hi,

I am doing equality comparisons on type tsvector using tsvector_eq.
How come a comparison that returns true before starts returning false
afterwards ?  (see results of case 1 and 3)

Regds
mallah.

(1)
tradein_clients=# SELECT tsvector_eq(to_tsvector('gift'),to_tsvector('gifts'));
tsvector_eq
-----------
t

(2)

tradein_clients=# SELECT
tsvector_eq(to_tsvector('gift'),to_tsvector('birthday gifts'));
tsvector_eq
-----------
f

(3)
tradein_clients=# SELECT tsvector_eq(to_tsvector('gift'),to_tsvector('gifts'));
tsvector_eq
-----------
f


tradein_clients=# SELECT version();                                              version
------------------------------------------------------------------------------------------------------
PostgreSQL 8.1.3 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.3.1
(Mandrake Linux 9.2 3.3.1-2mdk)


Re: tsvector_eq appears to be inconsistent.

From
Tom Lane
Date:
"Rajesh Kumar Mallah" <mallah.rajesh@gmail.com> writes:
> I am doing equality comparisons on type tsvector using tsvector_eq.
> How come a comparison that returns true before starts returning false
> afterwards ?  (see results of case 1 and 3)

IIRC, Teodor fixed a number of tsvector comparison bugs in 8.1.5 ...
try updating.  (You might need to REINDEX any tsearch2 indexes
afterwards, not sure.)
        regards, tom lane