On Thu, 24 Dec 2009 13:46:13 -0500, John Scoles <sco...@pythian.com> wrote:
> Well here it is the long awaited 1.24 Beer version of DBD::ORACLE > > http://sctvguide.ca/images/bd_two-four.jpg > > > You can find the release candidate here > > http://svn.perl.org/modules/dbd-oracle/trunk/DBD-Oracle-1.24-RC1.tar > > Any and all testing will be most welcome! > > Well a big load of stuff this time. A number of patches and bug fixes > plus with this RC I am introducing a two really big features > > 1) Full support for a multiple records from a single Fetch. This should > really speed things up as it cuts down on round trips to the > server > > 2) I have added ora_ncs_buff_mtpl or environment var ORA_DBD_NCS_BUFFER > so you can control the size of the byte buffer for lobs. So rather > than a default buffer 4* the Long_Read_Length or it is now 1. > This should free up great hoards of memory for your LOB Fetches I'm mostly interested in the multiple BLOB/record fixes, but still get errors/warnings: DBD-Oracle-svn 25 > perl Makefile.PL Using DBI 1.609 (for perl 5.010001 on x86_64-linux) installed in /pro/lib/perl5/site_perl/5.10.1/x86_64-linux/auto/DBI/ Argument "6.55_02" isn't numeric in numeric ge (>=) at Makefile.PL line 61. Configuring DBD::Oracle for perl 5.010001 on linux (x86_64-linux) Remember to actually *READ* the README file! Especially if you have any problems. Installing on a linux, Ver#2.6 Using Oracle in /pro/oracle/v11.1.0 DEFINE _SQLPLUS_RELEASE = "1101000600" (CHAR) Oracle version 11.1.0.6 (11.1) Found /pro/oracle/v11.1.0/rdbms/lib/ins_rdbms.mk Found /usr/share/oracle/11.1/client64/demo.mk Using /pro/oracle/v11.1.0/rdbms/lib/ins_rdbms.mk Your LD_LIBRARY_PATH env var is set to '/pro/asql/o90G/bin:/pro/asql/o90G/lib:/pro/oracle/v11.1.0/lib' Reading /pro/oracle/v11.1.0/rdbms/lib/ins_rdbms.mk Reading /pro/oracle/v11.1.0/rdbms/lib/env_rdbms.mk WARNING: Oracle /pro/oracle/v11.1.0/rdbms/lib/ins_rdbms.mk doesn't define a 'build' rule. WARNING: I will now try to guess how to build and link DBD::Oracle for you. This kind of guess work is very error prone and Oracle-version sensitive. It is possible that it won't be supported in future versions of DBD::Oracle. *PLEASE* notify dbi-users about exactly _why_ you had to build it this way. Found header files in /pro/oracle/v11.1.0/rdbms/public. Checking for functioning wait.ph System: perl5.010001 linux pc09 2.6.27.23-0.1-default #1 smp 2009-05-26 17:02:05 -0400 x86_64 x86_64 x86_64 gnulinux Compiler: ccache cc -O2 -fPIC -fno-strict-aliasing -pipe -fstack-protector -I/pro/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 Linker: /usr/bin/ld Sysliblist: -ldl -lm -lpthread -lnsl -lirc -lipgo Oracle makefiles would have used these definitions but we override them: CC: $(COMPDIR)/bin/gcc CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\ $(SHARED_CFLAG) $(USRFLAGS) [$(GFLAG) -O3 $(CDEBUG) -m32 -trigraphs -fPIC -I/pro/oracle/v11.1.0/rdbms/demo -I/pro/oracle/v11.1.0/rdbms/public -I/pro/oracle/v11.1.0/plsql/public -I/pro/oracle/v11.1.0/network/public -DLINUX -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_LARGEFILE_SOURCE=1 -DSLTS_ENABLE -DSLMXMX_ENABLE -D_REENTRANT -DNS_THREADS -D__NO_CTYPE=1 $(LPFLAGS) $(USRFLAGS)] LDFLAGS: $(LDFLAGS32) [-m32 -o $@ -L/pro/oracle/v11.1.0/rdbms//lib32/ -L/pro/oracle/v11.1.0/lib32/ -L/pro/oracle/v11.1.0/lib32/stubs/] Linking with -lclntsh -ldl -lm -lpthread -lnsl -lirc -lipgo -ldl -lm -lpthread [from $(OCISHAREDLIBS)] : DBD-Oracle-svn 26 > make : ccache cc -g -c -I/pro/oracle/v11.1.0/rdbms/public -I/pro/oracle/v11.1.0/rdbms/demo -I/pro/oracle/v11.1.0/rdbms/public -I/pro/oracle/v11.1.0/plsql/public -I/pro/oracle/v11.1.0/network/public -I/pro/lib/perl5/site_perl/5.10.1/x86_64-linux/auto/DBI -g -fPIC -fno-strict-aliasing -pipe -fstack-protector -I/pro/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DVERSION=\"1.23\" -DXS_VERSION=\"1.23\" -fPIC "-I/pro/lib/perl5/5.10.1/x86_64-linux/CORE" -Wall -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT -DORA_OCI_VERSION=\"11.1.0.6\" -Wall -Wcast-align -Wpointer-arith -Wbad-function-cast -Wcast-qual dbdimp.c dbdimp.c: In function ‘ora_db_login6’: dbdimp.c:546: warning: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’ dbdimp.c:553: warning: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’ dbdimp.c:765: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c:793: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c: In function ‘dbd_rebind_ph_varchar2_table’: dbdimp.c:1679: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c:1711: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c:1720: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c: In function ‘dbd_rebind_ph_number_table’: dbdimp.c:2086: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c: In function ‘dbd_rebind_ph’: dbdimp.c:2689: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c:2721: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c:2730: warning: cast from function call of type ‘char *’ to non-matching type ‘long int’ dbdimp.c:2730: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c: In function ‘do_bind_array_exec’: dbdimp.c:3243: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ dbdimp.c:3294: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ ccache cc -g -c -I/pro/oracle/v11.1.0/rdbms/public -I/pro/oracle/v11.1.0/rdbms/demo -I/pro/oracle/v11.1.0/rdbms/public -I/pro/oracle/v11.1.0/plsql/public -I/pro/oracle/v11.1.0/network/public -I/pro/lib/perl5/site_perl/5.10.1/x86_64-linux/auto/DBI -g -fPIC -fno-strict-aliasing -pipe -fstack-protector -I/pro/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DVERSION=\"1.23\" -DXS_VERSION=\"1.23\" -fPIC "-I/pro/lib/perl5/5.10.1/x86_64-linux/CORE" -Wall -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT -DORA_OCI_VERSION=\"11.1.0.6\" -Wall -Wcast-align -Wpointer-arith -Wbad-function-cast -Wcast-qual oci8.c oci8.c:430:99: warning: "/*" within comment oci8.c:431:2: warning: "/*" within comment oci8.c:435:44: warning: "/*" within comment oci8.c:516:50: warning: "/*" within comment oci8.c:689:79: warning: "/*" within comment oci8.c:997:3: warning: "/*" within comment oci8.c: In function ‘dbd_rebind_ph_lob’: oci8.c:1460: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ oci8.c: In function ‘fetch_lob’: oci8.c:1886: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 4 has type ‘ub4’ oci8.c: In function ‘get_object’: oci8.c:2254: warning: cast from pointer to integer of different size oci8.c:2254: warning: cast from pointer to integer of different size oci8.c: In function ‘sth_set_row_cache’: oci8.c:2781: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ oci8.c:2791: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ oci8.c: In function ‘ora_describe’: oci8.c:3588: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ oci8.c:3090: warning: unused variable ‘has_lobs’ oci8.c: In function ‘ora_parse_uid’: oci8.c:3887: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ oci8.c:3891: warning: format ‘%p’ expects type ‘void *’, but argument 6 has type ‘long int’ Running Mkbootstrap for DBD::Oracle () : DBD-Oracle-svn 27 > make test PERL_DL_NONLAZY=1 /pro/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 linux 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 ............... 1/11 DBD::Oracle::st execute failed: ORA-24813: cannot send or receive an unsupported LOB (DBD ERROR: OCIStmtExecute) [for Statement "BEGIN ? := DBMS_LOB.GETLENGTH( ? ); END;" with ParamValues: :p1=undef, :p2=OCILobLocatorPtr=SCALAR(0xb53ad0)] at t/31lob.t line 123. t/31lob.t ............... Dubious, test returned 1 (wstat 256, 0x100) Failed 4/11 subtests 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 ............ ok t/60reauth.t ............ skipped: ORACLE_USERID_2 not defined. t/70meta.t .............. ok t/80ora_charset.t ....... 1/14 t/80ora_charset.t ....... Dubious, test returned 4 (wstat 1024, 0x400) Failed 4/14 subtests Test Summary Report ------------------- t/31lob.t (Wstat: 256 Tests: 8 Failed: 1) Failed test: 8 Non-zero exit status: 1 Parse errors: Bad plan. You planned 11 tests but ran 8. t/80ora_charset.t (Wstat: 1024 Tests: 14 Failed: 4) Failed tests: 9-10, 13-14 Non-zero exit status: 4 Files=30, Tests=2108, 21 wallclock secs ( 0.44 usr 0.11 sys + 5.38 cusr 0.97 csys = 6.90 CPU) Result: FAIL Failed 2/30 test programs. 5/2108 subtests failed. make: *** [test_dynamic] Error 4 -- H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/ using & porting perl 5.6.2, 5.8.x, 5.10.x, 5.11.x on HP-UX 10.20, 11.00, 11.11, 11.23, and 11.31, OpenSuSE 10.3, 11.0, and 11.1, AIX 5.2 and 5.3. http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/ http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/