tsearch2, gin and @@@ operator?

From: Jean-Paul Argudo <jean-paul(at)argudo(dot)org>
To: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: tsearch2, gin and @@@ operator?
Date: 2007-08-30 16:08:42
Message-ID: 46D6EB8A.2090803@argudo.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi all,

I cant find in the docs about tsearch2 (nor the Oleg&Teodor's wiki) when
to use @@@ instead of @@.

@@ works in GIST, even with 'lexeme:a' (:a, :bc, etc.. every combination
of a,b,c & d part)

@@ doesnt with GIN in the same queries it, PostgreSQL says:

ERREUR: With class of lexeme restrictions use @@@ operation

I added a RAISE NOTICE as I can give you the query, generated from a
plpgsql function:

INFO: There was an error running this query:

select d.id, q
from documents_gin d,
to_tsquery('default_french', convert('chef:d', 'LATIN9')) q
where
gin_vector @@ q;

So, I have to use @@@ there instead of @@ to have the query working.

Now, I don't know when to use @@ or @@@.

Can I use always @@@ instead of @@ when its about a GIN based search?

If can use always @@@, is it less performant than @@ in some cases?

Please let me know when to use @@ or @@@ if I may not use allways @@@ in
those case, as I can tweak my plpgsql function.

Thanks a lot,

--
Jean-Paul Argudo
www.PostgreSQLFr.org

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2007-08-30 16:17:09 Re: Why is there a tsquery data type?
Previous Message Tom Lane 2007-08-30 16:08:05 Re: Re: [COMMITTERS] pgsql: Fix brain fade in DefineIndex(): it was continuing to access the