Hallo, while executing a "make test" with "DBD-Oracle 1.24b" I got an error on my HP box. I think, that the same problem was reported in the thread "DBD-Oracle 1.24a reports ORA-24334 in t/58object.t" by Timothy Everett on his SUN machine.
There is mentioned, that the problem was solved by a patch. But unfortunately I can't find that patch or a description in this threat how to get rid of this problem. Can anybody help me? My Environment-data: - perl 5.10.1 64-bit - gcc-Version 4.4.3 (GCC) - HP-UX B.11.11 U 9000/800 PA-RISC 2.0 - Oracle 10.2.0.4 [/home/perl/.cpan/build/DBD-Oracle-1.24-U4bVzI]$ perl -V Summary of my perl5 (revision 5 version 10 subversion 1) configuration: Platform: osname=hpux, osvers=11.11, archname=PA-RISC2.0-LP64 uname='hp-ux r3 b.11.11 u 9000800 1909236376 unlimited-user license ' config_args='-Uversiononly -Dinc_version_list=none -Duseperlio -Dcc=gcc -Duse64bitall -des' hint=recommended, useposix=true, d_sigaction=define 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='gcc64', ccflags ='-mpa-risc-2-0 -DDEBUGGING -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/pa20_64/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-g -O', cppflags='-mpa-risc-2-0 -DDEBUGGING -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/pa20_64/include' ccversion='', gccversion='3.4.6', gccosandvers='hpux11.11' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=87654321 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='/usr/bin/ld', ldflags ='-L/usr/local/pa20_64/lib -L/usr/local/lib/pa20_64 -L/usr/lib/pa20_64 -L/usr/local/lib -L/pro/local/lib -L/lib/pa20_64' libpth=/usr/local/pa20_64/lib /lib/pa20_64 /lib /usr/lib /usr/ccs/lib /usr/local/lib libs=-lcl -lpthread -lnsl -lnm -lgdbm -ldb -ldl -ldld -lm -lsec -lc perllibs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc libc=/lib/pa20_64/libc.sl, so=sl, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-B,deferred ' cccdlflags='-fPIC', lddlflags='-b -L/usr/local/pa20_64/lib -L/usr/local/lib/pa20_64 -L/usr/lib/pa20_64 -L/usr/local/lib -L/pro/local/lib -L/lib/pa20_64' Characteristics of this binary (from libperl): Compile-time options: DEBUGGING PERL_DONT_CREATE_GVSV PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT USE_LARGE_FILES USE_PERLIO Built under hpux Compiled at Aug 24 2009 13:27:32 @INC: /opt/perl64/lib/5.10.1/PA-RISC2.0-LP64 /opt/perl64/lib/5.10.1 /opt/perl64/lib/site_perl/5.10.1/PA-RISC2.0-LP64 /opt/perl64/lib/site_perl/5.10.1 . [/home/perl/.cpan/build/DBD-Oracle-1.24-U4bVzI]$ make realclean rm -f \ blib/script/ora_explain rm -f \ *.a core \ core.[0-9] blib/arch/auto/DBD/Oracle/extralibs.all \ core.[0-9][0-9] Oracle.bso \ pm_to_blib.ts core.[0-9][0-9][0-9][0-9] \ Oracle.x Oracle.bs \ perl tmon.out \ *.o pm_to_blib \ blib/arch/auto/DBD/Oracle/extralibs.ld blibdirs.ts \ Oracle.c core.[0-9][0-9][0-9][0-9][0-9] \ *perl.core core.*perl.*.? \ Makefile.aperl perl \ Oracle.def core.[0-9][0-9][0-9] \ mon.out libOracle.def \ perlmain.c perl.exe \ so_locations Oracle.exp rm -rf \ ora_explain dll.base \ DBD_ORA_OBJ.* Oracle.xsi \ dll.exp libOracle.def \ sqlnet.log blib \ mk.pm xstmp.c mv Makefile Makefile.old > /dev/null 2>&1 rm -f \ Oracle.o dbdimp.o oci8.o Makefile.old \ Makefile rm -rf \ DBD-Oracle-1.24 [/home/perl/.cpan/build/DBD-Oracle-1.24-U4bVzI]$ perl Makefile.PL Using DBI 1.609 (for perl 5.010001 on PA-RISC2.0-LP64) installed in /opt/perl64/lib/site_perl/5.10.1/PA-RISC2.0-LP64/auto/DBI/ Configuring DBD::Oracle for perl 5.010001 on hpux (PA-RISC2.0-LP64) Remember to actually *READ* the README file! Especially if you have any problems. Installing on a hpux, Ver#11.11 Using Oracle in /opt/oracle/product/oracle10.2 DEFINE _SQLPLUS_RELEASE = "1002000400" (CHAR) Oracle version 10.2.0.4 (10.2) Found /opt/oracle/product/oracle10.2/rdbms/demo/demo_rdbms.mk Found /opt/oracle/product/oracle10.2/rdbms/demo/demo_rdbms64.mk Found /opt/oracle/product/oracle10.2/rdbms/lib/ins_rdbms.mk Found /opt/oracle/product/oracle10.2/precomp/demo/proc/demo_proc.mk Using /opt/oracle/product/oracle10.2/rdbms/demo/demo_rdbms.mk Your LD_LIBRARY_PATH/SHLIB_PATH env var is set to '/opt/oracle/product/oracle10.2/lib:/opt/omni/lib:/opt/oracle/product/oracle10.2/lib:/opt/omni/lib' Reading /opt/oracle/product/oracle10.2/rdbms/demo/demo_rdbms.mk Reading /opt/oracle/product/oracle10.2/rdbms/lib/env_rdbms.mk Attempting to discover Oracle OCI build rules gcc64 -O -c DBD_ORA_OBJ.c by executing: [make -f /opt/oracle/product/oracle10.2/rdbms/demo/demo_rdbms.mk build ECHODO=echo ECHO=echo GENCLNTSH='echo genclntsh' CC=true OPTIMIZE= CCFLAGS= EXE=DBD_ORA_EXE OBJS=DBD_ORA_OBJ.o] Oracle oci build command: [ true -Wl,+s -Wl,+n +DA2.0W +DS2.0 -o build -L/opt/oracle/product/oracle10.2/rdbms/lib/ -L/opt/oracle/product/oracle10.2/lib/ -o DBD_ORA_EXE DBD_ORA_OBJ.o -lclntsh `cat /opt/oracle/product/oracle10.2/lib/ldflags` `cat /opt/oracle/product/oracle10.2/lib/sysliblist` -lm ] WARNING: Stripped `cat /opt/oracle/product/oracle10.2/lib/sysliblist` from link command, because it contains libraries not compiled with +z or +Z (PIC) causing link to fail. Furthermore, we should have already grabbed these libraries Found header files in /opt/oracle/product/oracle10.2/rdbms/public. WARNING: If you have trouble, see README.hpux.txt... you may have to build your own perl, or go hunting for libraries WARNING: If you have trouble, try perl Makefile.PL -l Checking for functioning wait.ph System: perl5.010001 hp-ux r3 b.11.11 u 9000800 1909236376 unlimited-user license Compiler: gcc64 -g -O -mpa-risc-2-0 -DDEBUGGING -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/pa20_64/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 Linker: /usr/bin/ld Sysliblist: -lrt -lpthread -l:libnss_dns.1 -lnsl Oracle makefiles would have used these definitions but we override them: CC: cc CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\ $(SHARED_CFLAG) $(USRFLAGS) [$(GFLAG) $(OPTIMIZE) $(CDEBUG) +DA2.0W +DS2.0 -DSS_64BIT_SERVER -I/opt/oracle/product/oracle10.2/rdbms/demo -I/opt/oracle/product/oracle10.2/rdbms/public -I/opt/oracle/product/oracle10.2/plsql/public -I/opt/oracle/product/oracle10.2/network/public $(SPFLAGS) $(LPFLAGS) $(SHARED_CFLAG) $(USRFLAGS)] LDFLAGS: -Wl,+s -Wl,+n +DA2.0W +DS2.0 -o $@ -L$(PRODLIBHOME) -L$(LIBHOME) [-Wl,+s -Wl,+n +DA2.0W +DS2.0 -o $@ -L/opt/oracle/product/oracle10.2/rdbms/lib/ -L$(LIBHOME)] Linking with OTHERLDFLAGS = +s +n -L/opt/oracle/product/oracle10.2/rdbms/lib/ -L/opt/oracle/product/oracle10.2/lib/ -lclntsh `cat /opt/oracle/product/oracle10.2/lib/ldflags` -lm -lqsmashr [from 'build' rule] WARNING: If you have problems you may need to rebuild perl with threading enabled. Checking if your kit is complete... Looks good LD_RUN_PATH=/opt/oracle/product/oracle10.2/lib:/opt/oracle/product/oracle10.2/rdbms/lib Using DBD::Oracle 1.24. Using DBD::Oracle 1.24. Using DBI 1.609 (for perl 5.010001 on PA-RISC2.0-LP64) installed in /opt/perl64/lib/site_perl/5.10.1/PA-RISC2.0-LP64/auto/DBI/ Writing Makefile for DBD::Oracle *** If you have problems... read all the log printed above, and the README and README.help.txt files. (Of course, you have read README by now anyway, haven't you?) [/home/perl/.cpan/build/DBD-Oracle-1.24-U4bVzI]$ make cp Oracle.pm blib/lib/DBD/Oracle.pm cp oraperl.ph blib/lib/oraperl.ph cp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.h cp ocitrace.h blib/arch/auto/DBD/Oracle/ocitrace.h cp Oraperl.pm blib/lib/Oraperl.pm cp Oracle.h blib/arch/auto/DBD/Oracle/Oracle.h cp lib/DBD/Oracle/Object.pm blib/lib/DBD/Oracle/Object.pm cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm cp lib/DBD/Oracle/GetInfo.pm blib/lib/DBD/Oracle/GetInfo.pm /usr/bin/perl -p -e "s/~DRIVER~/Oracle/g" /opt/perl64/lib/site_perl/5.10.1/PA-RISC2.0-LP64/auto/DBI/Driver.xst > Oracle.xsi /usr/bin/perl /opt/perl64/lib/5.10.1/ExtUtils/xsubpp -typemap /opt/perl64/lib/5.10.1/ExtUtils/typemap -typemap typemap Oracle.xs > Oracle.xsc && mv Oracle.xsc Oracle.c gcc64 -c -I/opt/oracle/product/oracle10.2/rdbms/public -I/opt/oracle/product/oracle10.2/rdbms/demo -I/opt/oracle/product/oracle10.2/rdbms/public -I/opt/oracle/product/oracle10.2/plsql/public -I/opt/oracle/product/oracle10.2/network/public -I/opt/perl64/lib/site_perl/5.10.1/PA-RISC2.0-LP64/auto/DBI -mpa-risc-2-0 -DDEBUGGING -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/pa20_64/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O -DVERSION=\"1.24\" -DXS_VERSION=\"1.24\" -fPIC "-I/opt/perl64/lib/5.10.1/PA-RISC2.0-LP64/CORE" -Wall -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT -DORA_OCI_VERSION=\"10.2.0.4\" Oracle.c gcc64 -c -I/opt/oracle/product/oracle10.2/rdbms/public -I/opt/oracle/product/oracle10.2/rdbms/demo -I/opt/oracle/product/oracle10.2/rdbms/public -I/opt/oracle/product/oracle10.2/plsql/public -I/opt/oracle/product/oracle10.2/network/public -I/opt/perl64/lib/site_perl/5.10.1/PA-RISC2.0-LP64/auto/DBI -mpa-risc-2-0 -DDEBUGGING -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/pa20_64/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O -DVERSION=\"1.24\" -DXS_VERSION=\"1.24\" -fPIC "-I/opt/perl64/lib/5.10.1/PA-RISC2.0-LP64/CORE" -Wall -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT -DORA_OCI_VERSION=\"10.2.0.4\" dbdimp.c gcc64 -c -I/opt/oracle/product/oracle10.2/rdbms/public -I/opt/oracle/product/oracle10.2/rdbms/demo -I/opt/oracle/product/oracle10.2/rdbms/public -I/opt/oracle/product/oracle10.2/plsql/public -I/opt/oracle/product/oracle10.2/network/public -I/opt/perl64/lib/site_perl/5.10.1/PA-RISC2.0-LP64/auto/DBI -mpa-risc-2-0 -DDEBUGGING -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/pa20_64/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O -DVERSION=\"1.24\" -DXS_VERSION=\"1.24\" -fPIC "-I/opt/perl64/lib/5.10.1/PA-RISC2.0-LP64/CORE" -Wall -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT -DORA_OCI_VERSION=\"10.2.0.4\" oci8.c Running Mkbootstrap for DBD::Oracle () chmod 644 Oracle.bs rm -f blib/arch/auto/DBD/Oracle/Oracle.sl LD_RUN_PATH="/opt/oracle/product/oracle10.2/lib:/opt/oracle/product/oracle10.2/rdbms/lib" /usr/bin/ld -b -L/usr/local/pa20_64/lib -L/usr/local/lib/pa20_64 -L/usr/lib/pa20_64 -L/usr/local/lib -L/pro/local/lib -L/lib/pa20_64 Oracle.o dbdimp.o oci8.o +s +n -L/opt/oracle/product/oracle10.2/rdbms/lib/ -L/opt/oracle/product/oracle10.2/lib/ -lclntsh `cat /opt/oracle/product/oracle10.2/lib/ldflags` -lm -lqsmashr -o blib/arch/auto/DBD/Oracle/Oracle.sl \ \ Warning: Some debug info sections were missing. PXDB aborted. chmod 755 blib/arch/auto/DBD/Oracle/Oracle.sl cp Oracle.bs blib/arch/auto/DBD/Oracle/Oracle.bs chmod 644 blib/arch/auto/DBD/Oracle/Oracle.bs /usr/bin/perl "-Iblib/arch" "-Iblib/lib" ora_explain.PL ora_explain Extracted ora_explain from ora_explain.PL with variable substitutions. cp ora_explain blib/script/ora_explain /usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/ora_explain Manifying blib/man1/ora_explain.1 Manifying blib/man3/DBD::Oracle.3 Manifying blib/man3/DBD::Oraperl.3 [/home/perl/.cpan/build/DBD-Oracle-1.24-U4bVzI]$ make test rm -f blib/arch/auto/DBD/Oracle/Oracle.sl LD_RUN_PATH="/opt/oracle/product/oracle10.2/lib:/opt/oracle/product/oracle10.2/rdbms/lib" /usr/bin/ld -b -L/usr/local/pa20_64/lib -L/usr/local/lib/pa20_64 -L/usr/lib/pa20_64 -L/usr/local/lib -L/pro/local/lib -L/lib/pa20_64 Oracle.o dbdimp.o oci8.o +s +n -L/opt/oracle/product/oracle10.2/rdbms/lib/ -L/opt/oracle/product/oracle10.2/lib/ -lclntsh `cat /opt/oracle/product/oracle10.2/lib/ldflags` -lm -lqsmashr -o blib/arch/auto/DBD/Oracle/Oracle.sl \ \ Warning: Some debug info sections were missing. PXDB aborted. chmod 755 blib/arch/auto/DBD/Oracle/Oracle.sl cp ora_explain blib/script/ora_explain /usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/ora_explain PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/01base.t .............. # Test loading DBI, DBD::Oracle and version t/01base.t .............. ok t/10general.t ........... ok t/12impdata.t ........... ok t/14threads.t ........... skipped: this hpux perl 5.010001 not configured to support iThreads t/15nls.t ............... ok t/20select.t ............ ok t/21nchar.t ............. ok t/22nchar_al32utf8.t .... ok t/22nchar_utf8.t ........ ok t/23wide_db.t ........... skipped: Database character set is not Unicode t/23wide_db_8bit.t ...... skipped: Database character set is not Unicode t/23wide_db_al32utf8.t .. skipped: Database character set is not Unicode t/24implicit_utf8.t ..... ok t/25plsql.t ............. ok t/26exe_array.t ......... ok t/28array_bind.t ........ ok t/30long.t .............. ok t/31lob.t ............... ok t/31lob_extended.t ...... ok t/32xmltype.t ........... ok t/34pres_lobs.t ......... ok t/40ph_type.t ........... 1/19 Placeholder behaviour for ora_type=1 VARCHAR2 (the default) varies with Oracle version. Oracle 7 didn't strip trailing spaces, Oracle 8 did, until 9.2.x Your system doesn't. If that seems odd, let us know. t/40ph_type.t ........... ok t/50cursor.t ............ ok t/51scroll.t ............ ok t/55nested.t ............ ok t/56embbeded.t .......... ok t/58object.t ............ 1/51 DBD::Oracle::db prepare failed: ORA-24334: Kein Deskriptor für diese Position (DBD ERROR: OCIParamGet) [for Statement "select * from dbd_test__obj_table order by id"] at t/58object.t line 116. t/58object.t ............ Dubious, test returned 6 (wstat 1536, 0x600) Failed 46/51 subtests t/60reauth.t ............ skipped: ORACLE_USERID_2 not defined. t/70meta.t .............. ok t/80ora_charset.t ....... ok Test Summary Report ------------------- t/58object.t (Wstat: 1536 Tests: 5 Failed: 0) Non-zero exit status: 6 Parse errors: Bad plan. You planned 51 tests but ran 5. Files=30, Tests=2081, 30 wallclock secs ( 1.03 usr 0.22 sys + 22.76 cusr 2.11 csys = 26.12 CPU) Result: FAIL Failed 1/30 test programs. 0/2081 subtests failed. *** Fehlerrückkehrcode 255 Stopp. [/home/perl/.cpan/build/DBD-Oracle-1.24-U4bVzI]$ perl -Mblib t/58object.t 1..51 ok 1 - use DBI; ok 2 - ora_objects flag is set to 1 ok 3 - ora_objects flag is set to 0 ok 4 - The object isa DBI::db ok 5 - Fetch current schema name DBD::Oracle::db prepare failed: ORA-24334: Kein Deskriptor für diese Position (DBD ERROR: OCIParamGet) [for Statement "select * from dbd_test__obj_table order by id"] at t/58object.t line 116. Thanks in advance for helping me. Kind regards Jürgen Großkopf