Re: PLPerl not installed correctly? - Mailing list pgsql-novice

From Daniel Hutchison
Subject Re: PLPerl not installed correctly?
Date
Msg-id 00ae01cae234$ebdc4aa0$c394dfe0$@hutchison@verizon.net
Whole thread Raw
In response to Re: PLPerl not installed correctly?  (Mladen Gogala <mgogala@vmsinfo.com>)
List pgsql-novice
Yes, I tried it that way as well.  Same problem!  Thanks for the suggestion,
however.

-----Original Message-----
From: pgsql-novice-owner@postgresql.org
[mailto:pgsql-novice-owner@postgresql.org] On Behalf Of Mladen Gogala
Sent: Thursday, April 22, 2010 9:14 AM
To: Daniel.Hutchison@rokaconsulting.com
Cc: pgsql-novice@postgresql.org
Subject: Re: [NOVICE] PLPerl not installed correctly?

Daniel Hutchison wrote:
>
> I've been experiencing problems getting any plperl function working,
> and I believe the problem lies in the actual plperl installation not
> due to my rusty perl memories. For example, the very simple plperl
> example in the comprehensive documentation (at
> http://www.postgresql.org/docs/8.4/interactive/plperl-funcs.html):
>
> CREATE FUNCTION perl_max (integer, integer) RETURNS integer AS $$
>
> if ($_[0] > $_[1]) { return $_[0]; }
>
> return $_[1];
>
> $$ LANGUAGE plperl;
>
> Returns something odd (at least to me, also with little postgresql
> experience):
>
> prod1=> select perl_max(1,2);
>
> ERROR: invalid input syntax for integer: "CODE(0x1f6d13c)"
>
> I have seen something similar to "CODE(0x...)" show up in other
> programs, but because the input parameter on those was TEXT I didn't
> get an error... the program just behaved very confusingly until I
> realized that the correct text input was being replaced with
> "CODE(0x...)". At least in this example, I get an actual error because
> the input variable doesn't match type.
>
> Thanks for any help you can tell me on how to fix this!
>
> Daniel
>
> My Environment:
>
> PostgreSQL: \set: "VERSION = 'PostgreSQL 8.4.3, compiled by Visual C++
> build 1400, 32-bit'"
>
> OS: Windows Vista laptop (only for development purposes, I swear ;) )
>
> ActivePerl: perl -v: "This is perl, v5.10.1 built for
> MSWin32-x86-multi-thread"
>

mgogala=# create function perl_max(integer,integer) RETURNS integer AS $$
mgogala$# ($x,$y)=@_;
mgogala$# ($x>$y)? return $x : return $y;
mgogala$# $$ LANGUAGE plperl;
CREATE FUNCTION

mgogala=# select perl_max(1,2);
perl_max
----------
2
(1 row)

Time: 27.411 ms

--
Mladen Gogala
Sr. Oracle DBA
1500 Broadway
New York, NY 10036
(212) 329-5251
www.vmsinfo.com


--
Sent via pgsql-novice mailing list (pgsql-novice@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-novice


pgsql-novice by date:

Previous
From: Mladen Gogala
Date:
Subject: Re: PLPerl not installed correctly?
Next
From: Ben Chobot
Date:
Subject: Re: [GENERAL] Specific database vars, again...