Re: PLPerl Trigger to update text search - Mailing list pgsql-general

From Alex Hunsaker
Subject Re: PLPerl Trigger to update text search
Date
Msg-id CAFaPBrQA5T717aMm5UPK3C2KhzCWAUtMTQKHDU=-z_xXXjejgQ@mail.gmail.com
Whole thread Raw
In response to PLPerl Trigger to update text search  (Alex Magnum <magnum11200@gmail.com>)
Responses Re: PLPerl Trigger to update text search
List pgsql-general


On Fri, Jul 31, 2015 at 6:07 AM, Alex Magnum <magnum11200@gmail.com> wrote:
Hi,

I am trying to update a tsvector field through a plperl trigger.

$_TD->{new}{text_search} = to_tsvector('pg_catalog.english', 'text1 text2');


You need to wrap that into an actual SPI call at the very least. Database procedures are not available natively for PL languages in general (minus perhaps pl/pgsql).

 Something like:

$_TD->{new}{text_search} = spi_exec_query("to_tsvector('pg_catalog.english', ". quote_literal('text1 text2') .";")->{rows}[0]{to_tsvector};

If performance is any consideration, I suspect pl/pgsql would be the clear winner.

pgsql-general by date:

Previous
From: Peter Kroon
Date:
Subject: Re: conn = PQconnectdb(conninfo);
Next
From: Alex Hunsaker
Date:
Subject: Re: PLPerl Trigger to update text search