User functions and AIX - Mailing list pgsql-hackers

From darcy@druid.net (D'Arcy J.M. Cain)
Subject User functions and AIX
Date
Msg-id 20010528155617.076821AB8@druid.net
Whole thread Raw
Responses Re: User functions and AIX  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
IBM is trying to find the answer to this but I thought I would throw
this out here to see if anyone can help me.  I am compiling a user
defined type on AIX and it fails when I try to use it.  The type is
chkpass and it is in the contrib directory.  It fails with a core dump
at line 88 in chkpass.c.  The line reads as follows.
   result = (chkpass *) palloc(sizeof(chkpass));

The top of the backtrace looks like this.

#0  0x0 in ?? () from (unknown load module)
#1  0xd1087a60 in chkpass_in (fcinfo=0x0) at chkpass.c:88
#2  0x10045cf4 in or_clause (clause=0x0) at clauses.c:211
#3  0x10075d68 in int82ge (fcinfo=0x1015cfc8) at int8.c:343
#4  0x1005909c in _readArrayRef () at readfuncs.c:924
#5  0x10059b68 in _readSeqScan () at readfuncs.c:600

It looks like the dynamically loaded object (chkpass.so) can't determine
the address of palloc() from the parent.  I assume I need a flag for the
compile either on the main build to export the addresses or on the build
of chkpass to tell it where to look up the addresses.  Anyone been
through this that might be able to shed some light?

-- 
D'Arcy J.M. Cain <darcy@{druid|vex}.net>   |  Democracy is three wolves
http://www.druid.net/darcy/                |  and a sheep voting on
+1 416 425 1212     (DoD#0082)    (eNTP)   |  what's for dinner.


pgsql-hackers by date:

Previous
From: Larry Rosenman
Date:
Subject: doc markup bug....
Next
From: darcy@druid.net (D'Arcy J.M. Cain)
Date:
Subject: Re: New/old style trigger API