tsearch2 text::TSVECTOR cast not working for me on Pg 8.1.6 - Mailing list pgsql-general

From James Reynolds
Subject tsearch2 text::TSVECTOR cast not working for me on Pg 8.1.6
Date
Msg-id 64772.38.96.151.250.1202762238.squirrel@QuestMail.FutureQuest.net:443
Whole thread Raw
Responses Re: tsearch2 text::TSVECTOR cast not working for me on Pg 8.1.6
List pgsql-general
Hi,

I want to convert a TEXT string that I am mangling to TSVECTOR with a cast.
I am using Postgresql 8.1.6 and tsearch2.

According to the documentation this should work although I am getting an
ERROR.

tsearch2 reference  on www.sai.msu.su says that

text::TSVECTOR RETURNS TSVECTOR


FWIW, I am using regexp_replace to just take out the first occurrence of
each lexeme and then trying to cast back into a tsvector.

EG:

SELECT  replace(
             regexp_replace(
                     textin(
                         tsvector_out(
                             to_tsvector('default', coalesce(l.comments, ''))
                          )
                      )::TEXT
               , '(:\\d+[ABCD]*)(\\,\\d+[ABCD]*)*', '\\1', 'g')
          , '''', '')::tsvector
FROM listings l LIMIT 1;

ERROR:  cannot cast type text to tsvector


What is interesting is that a basic select works probably because the
pseudo type 'cstring' is in effect.

select 'To a Vector'::TSVECTOR;
     tsvector
-------------------
 'a' 'To' 'Vector'
(1 row)

Time: 3.297 ms


Any ideas on how to get back to a cstring so that it will work
OR
how to make the text::TSVECTOR cast work?

Cheers,
James

pgsql-general by date:

Previous
From: Jeff Davis
Date:
Subject: Re: Empty to NULL conversion - Ruby - Postgres ?
Next
From: Tom Lane
Date:
Subject: Re: tsearch2 text::TSVECTOR cast not working for me on Pg 8.1.6