Thread: Using PL/pgSQL

Using PL/pgSQL

From
"Kojak"
Date:
I'm trying to install PL/pgSQL so that I can use it in a FUNCTION.  I'm
using PostGres 6.5.x (I know I need to upgrade...but that is another
subject...).  So far I've done the following:
create function pgpgsql_call_handler() returns opaque as
'/usr/local/pgsql/lib/plpgsql.so' language 'C';
create procedural language 'plpgsql' handler plpgsql_call_handler
lancompiler 'PL/pgSQL';

I get a successful creation with these...
When I try and execute a function that uses "language 'plpgsql'", I get
the following error:

ERROR: Load of file /usr/local/pgsql/lib/plpgsql.so failed: dlopen
'/usr/local/pgsql/lib/plpgsql.so' failed. (Shared object"libpq.so.2"
not found)

I have verified that these 2 files do exist in the
/usr/local/pgsql/lib/ directory.  Their permissions are both rw-r--r--
and owned by pgsql:pgsql

Thoughts?


Re: Using PL/pgSQL

From
Martijn van Oosterhout
Date:
On Mon, Nov 13, 2006 at 01:26:08PM -0800, Kojak wrote:
> I'm trying to install PL/pgSQL so that I can use it in a FUNCTION.  I'm
> using PostGres 6.5.x (I know I need to upgrade...but that is another
> subject...).

No, you need to upgrade first. 6.5 is positivly prehistoric, no-one is
going to be much help dealing with something that old. It will leak
memory and other bizarre errors like that.

That said:

> ERROR: Load of file /usr/local/pgsql/lib/plpgsql.so failed: dlopen
> '/usr/local/pgsql/lib/plpgsql.so' failed. (Shared object"libpq.so.2"
> not found)
>
> I have verified that these 2 files do exist in the
> /usr/local/pgsql/lib/ directory.  Their permissions are both rw-r--r--
> and owned by pgsql:pgsql

Maybe that directory is not in the search path? In any case, plpgsql
should not be using that library anyway, so there is something very odd
with your installation.

Perhaps you should upgrade.

Have a nice day,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> From each according to his ability. To each according to his ability to litigate.

Attachment