|
Posted by Zhamak Dehghani on October 26, 2004, 1:08 am
Please log in for more thread options
Hi,
I have tried to use "plperlu" to write server functions to encapsulate
some
common functionality such as "copy an entity"(and all its associated
records).
I'm getting a database server crash calling the function from psql or
a perl client. Where the crash happens is kind of random and happens
on different sql
statements.
Manipulating (i.e. inserting) one table seems to be fine but as soon
as I try
to manipulate other related tables in the same function it crashes the
database server.
I was wondering if anyone has had problems (database server crashing)
using
plperlu, where the server function manipulates multipe associated
tables?
I really appreciate your help.
Here is some more detail:
====================================
The versions are perl modules are:
DBI: I have tried 1.35, 1.37, 1.44, etc. they all the same.
DBD::Pg: 1.32
DBD::PgSPI:0.01
-------------------------------------
%rpm -q -i postgresql-server-7.4.5-1PGDG
Name : postgresql-server Relocations: (not
relocateable)
Version : 7.4.5 Vendor: (none)
Release : 1PGDG Build Date: Thu 19 Aug
2004 03:20:55 EST
Install Date: Tue 07 Sep 2004 11:00:22 EST Build Host: onpanew
Group : Applications/Databases Source RPM:
postgresql-7.4.5-1PGDG.src.rpm
Size : 7911644 License: BSD
--------------------------------------
% uname -a
Linux sparkhost 2.4.20-8bigmem #1 SMP Thu Mar 13 17:32:29 EST 2003
i686 i686 i386 GNU/Linux
*** (redhat 9)
----------------------------------------------------------------------------
%perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 0)
configuration:
Platform:
osname=linux, osvers=2.4.20-2.48smp,
archname=i386-linux-thread-multi
uname='linux str'
config_args='-des -Doptimize=-O2 -march=i386 -mcpu=i686 -g
-Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Red
Hat, Inc. -Dinstallprefix=/usr -Dprefix=/usr -Darchname=i386-linux
-Dvendorprefix=/usr -Dsiteprefix=/usr
-Dotherlibdirs=/usr/lib/perl5/5.8.0 -Duseshrplib -Dusethreads
-Duseithreads -Duselargefiles -Dd_dosuid -Dd_semctl_semun -Di_db
-Ui_ndbm -Di_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio
-Dinstallusrbinperl -Ubincompat5005 -Uversiononly
-Dpager=/usr/bin/less -isr'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef'
useithreads=define usemultiplicity=
useperlio= d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=un uselongdouble=
usemymalloc=, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-DDEBUGGING -fno-strict-aliasing -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
optimize='',
cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-DDEBUGGING -fno-strict-aliasing -I/usr/local/include
-I/usr/include/gdbm'
ccversion='', gccversion='3.2.2 20030213 (Red Hat Linux 8.0
3.2.2-1)', gccosandvers=''
gccversion='3.2.2 200302'
intsize=e, longsize= , ptrsize=p, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define,
longdblsize=12
ivtype='long'
k', ivsize=4'
ivtype='long'
known_ext, nvtype='double'
o_nonbl', nvsize=, Off_t='', lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='gcc'
l', ldflags =' -L/usr/local/lib'
ldf'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lgdbm -ldb -ldl -lm -lpthread -lc -lcrypt -lutil
perllibs=
libc=/lib/libc-2.3.1.so, so=so, useshrplib=true, libperl=libper
gnulibc_version='2.3.1'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so', d_dlsymun=undef,
ccdlflags='-rdynamic
-Wl,-rpath,/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE'
cccdlflags='-fPIC'
ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5', lddlflags='s
Unicode/Normalize XS/A'
Characteristics of this binary (from libperl):
Compile-time options: DEBUGGING MULTIPLICITY USE_ITHREADS
USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
Locally applied patches:
MAINT18379
Built under linux
Compiled at Feb 18 2003 22:19:53
@INC:
/usr/lib/perl5/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/5.8.0
/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.0
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.0
/usr/lib/perl5/vendor_perl
/usr/lib/perl5/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/5.8.0
**** I got some warnings on installation of DBI complaining about
using
multi-threaded version of perl. mmm... I just ignored it!
-----------------------------------------------------------------------------
strace of the server before crash:
%tail -100 /tmp/postmaster-strace
_llseek(35, 114688, [114688], SEEK_SET) = 0
read(35, " |
| Similar Threads | Posted | | Net::FTP crashes on ftp->get() | February 16, 2006, 5:39 pm |
| Install DBD::Oracle crashes | November 22, 2006, 3:08 pm |
| Win32::OLE, InternetExplorer, NewWindow, Events --- crashes | January 12, 2006, 9:23 am |
| Object oriented database | February 8, 2008, 10:37 am |
| Database issues with SOAP::LITE | July 3, 2008, 8:18 am |
| Availability of a tool for database contents reporting | September 7, 2004, 9:41 pm |
| Testing database code in CPAN modules | April 4, 2005, 12:33 pm |
| BerkeleyDB Queue Database Array Size | August 14, 2006, 2:50 am |
| Proposal Database::Initialize::Postgresql (naming okay?) | March 17, 2007, 11:12 am |
| Perl Database Programing download for the template | January 9, 2008, 12:56 pm |
|