Hello, 

    I'm having a strange problem.  I compiled 5.8.9 on SUSE Linux Enterprise 
Server 10 (x86_64), 
installed DBI & DBD::Oracle.  We are running Oracle 11g on this server.  
Running a program that
uses DBI/DBD::Oracle, the process locked the server up by using all the memory 
and swap.  The server
has 32 gig of memory and I believe 16 gig of swap.  Running in the debugger, I 
isolated the problem in 
DBD/Oracle.pm, 

my $oci = DBD::Oracle::ORA_OCI();

sub AUTOLOAD {
    (my $constname = $AUTOLOAD) =~ s/.*:://;
    my $val = constant($constname); 
    *$AUTOLOAD = sub { $val };
    goto &$AUTOLOAD;
}

AUTOLOAD loads DBD::Oracle::ORA_OCI, which triggers the loading of 
DBD::Oracle::constant.  
DBD::Oracle::constant is not found, so constant is loaded, not found, constant 
loaded....etc
I checked Oracle.so (just in case for some crazy reason constant didn't get in 
the so) it's 
there.  What perplexes me is this perl install is the just like several other 
servers we have.
The one big difference is there is an 11g Oracle server running on this box.  I 
have the same
set up on an open-SuSE box that works fine, but it is only using the 11g 
client.  The only problems
I had when compiling DBD::Oracle was the lob-plsql test failing, otherwise 
everything worked fine.
I don't even know if Oracle is the issue here.  Should I post to P5P?  

                                    Thanks
                                        Scott

Summary of my perl5 (revision 5 version 8 subversion 9) configuration:
  Platform:
    osname=linux, osvers=2.6.27.19, archname=x86_64-linux
    uname='linux  srv12 2.6.27.19 #1 smp mon feb 23 16:46:24 cst 2009 x86_64 
x86_64 x86_64 gnulinux '
    config_args='-de -Dprefix=/usr/local/perl-5.8.9 -Dnoextensions=ODBM_File   
-Dlibpth=/usr/local/lib64 /lib64 /usr/lib64 -Dldflags=-L/usr/local/lib64 
-Duse64bitall=define'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef use5005threads=undef useithreads=undef 
usemultiplicity=undef
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=define use64bitall=define uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-fno-strict-aliasing -pipe -I/usr/local/include 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2',
    cppflags='-fno-strict-aliasing -pipe -I/usr/local/include'
    ccversion='', gccversion='4.1.2 20070115 (SUSE Linux)', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', 
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib /lib64 /usr/lib64 /usr/local/lib64
    libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
    libc=/lib/libc-2.4.so, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.4'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -O2 -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT
                        USE_FAST_STDIO USE_LARGE_FILES USE_PERLIO
  Built under linux
  Compiled at Mar 31 2009 10:07:10
  %ENV:
    PERL5LIB="/usr/local/lib/tools/perlmodules" 
  @INC:
    /usr/local/lib/tools/perlmodules
    /usr/local/perl-5.8.9/lib/5.8.9/x86_64-linux
    /usr/local/perl-5.8.9/lib/5.8.9
    /usr/local/perl-5.8.9/lib/site_perl/5.8.9/x86_64-linux
    /usr/local/perl-5.8.9/lib/site_perl/5.8.9
    .


Reply via email to