Re: building 7.4 with plperl - Mailing list pgsql-general

From Gianni Mariani
Subject Re: building 7.4 with plperl
Date
Msg-id 3FB9D0F3.3010404@mariani.ws
Whole thread Raw
In response to building 7.4 with plperl  (Gianni Mariani <gianni@mariani.ws>)
Responses Re: building 7.4 with plperl  ("Keith C. Perry" <netadmin@vcsn.com>)
Re: building 7.4 with plperl  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-general
Gianni Mariani wrote:

>
> Before I go deep into this - does anyone have the quick fix for this ?
>
> Some facts - the 7.3.4 version of plperl.c has the same errors in the
> 7.4 tree.
> The 7.4 version of plperl.c (with some error handling API calls
> commented out) compiles fine in the 7.3.4 tree.
> (Same machine - same install of perl !)  Points to using some
> alternate perl API probably by macro collision ?

/* Define to 1 to build client libraries as thread-safe code.
   (--enable-thread-safety) */
#define USE_THREADS 1

So this seems to be the collision.

--enable-thread-safety is a new option for libpq - however this collides
with perl's use of the same macro.

I suspect that the right answer would be to change the name USE_THREADS
to PG_USE_THREADS for pg.

Quick and nasty work around patch:

--- plperl.c.7.4        Thu Sep  4 08:16:39 2003
+++ plperl.c    Mon Nov 17 23:07:05 2003
@@ -55,6 +55,7 @@
 #include "catalog/pg_proc.h"
 #include "catalog/pg_type.h"

+#undef USE_THREADS
 /* perl stuff */
 #include "EXTERN.h"
 #include "perl.h"

another fix would be to make plplerl use the explicit api.




pgsql-general by date:

Previous
From: Mark Kirkwood
Date:
Subject: Re: snort, acid and postgres
Next
From: 黎维 王
Date:
Subject: how to get historical data?