Re: ANNOUNCE: DBD::Oracle 1.25 Release Candidate 4

John Scoles <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.sybase.devel
Message-ID <[email protected]>
Not getting this on windows and 32 bit linux

Hmm!!!

 having a look at it at

in oci8.c on line 2046

    text        str_buf[200];
    double        dnum;
    size_t        str_len;

dnum is set up as a double.

later on 2174 I where I return the value

(void) OCINumberToReal(fbh->imp_sth->errhp, (CONST OCINumber *) attr_value,
                                (uword) sizeof(dnum), (dvoid *) &dnum);

perhaps the (uword) is causing the problem??????


can you give it few tests for me and see what you come up with??

Cheers
John
On Wed, Sep 15, 2010 at 2:35 PM, H.Merijn Brand <[email protected]> wrote:

> On Wed, 15 Sep 2010 10:35:03 -0400, John Scoles <[email protected]>
> wrote:
>
> > Ok here I am again for the fourth time :(
> >
> > You can find it here
> >
> > http://svn.perl.org/modules/dbd-oracle/trunk/DBD-Oracle-1.25-RC4.tar
>
> Please use the correct extension: .tar.gz
>
> > This one has some more warning fixes and a little add to the Pod. Small
> > but annoying.
> >
> > I wonder if I will break a record this time??
> >
> > I think it was 5??
>
> Longdouble causes tests to fail?
>
>
> Using DBI 1.613 (for perl 5.012000 on i686-linux-64int-ld)
>                                                      ^^^
> Configuring DBD::Oracle for perl 5.012000 on linux (i686-linux-64int-ld)
>
> Installing on a linux, Ver#2.6
> Using Oracle in /pro/oracle/v11.2
> DEFINE _SQLPLUS_RELEASE = "1102000100" (CHAR)
> Oracle version 11.2.0.1 (11.2)
>
>
> System: perl5.012000 linux nb09 2.6.31.12-0.2-default #1 smp 2010-03-16
> 21:25:39 +0100 i686 i686 i386 gnulinux
> Compiler:   cc -O2 -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector
> -I/pro/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
> Linker:     /usr/bin/ld
> Sysliblist:
> Oracle makefiles would have used these definitions but we override them:
>  CC:       /usr/bin/gcc
>  LDFLAGS:  -g $(MTYPE)
> sh: shell: command not found
>           [-g ]
> Linking with  -L../../ -locci -lclntsh -lpthread [from $(CCLIB)]
>
> /pro/bin/perl -p -e "s/~DRIVER~/Oracle/g"
> /pro/lib/perl5/site_perl/5.12.0/i686-linux-64int-ld/auto/DBI/Driver.xst >
> Oracle.xsi
> /pro/bin/perl /pro/lib/perl5/5.12.0/ExtUtils/xsubpp  -typemap
> /pro/lib/perl5/5.12.0/ExtUtils/typemap -typemap typemap  Oracle.xs >
> Oracle.xsc && mv Oracle.xsc Oracle.c
> cc -c  -I/usr/include/oracle/11.2/client
>  -I/pro/lib/perl5/site_perl/5.12.0/i686-linux-64int-ld/auto/DBI -DDEBUGGING
> -fno-strict-aliasing -pipe -fstack-protector -I/pro/local/include
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.25\"
> -DXS_VERSION=\"1.25\" -fPIC
> "-I/pro/lib/perl5/5.12.0/i686-linux-64int-ld/CORE"  -Wall -Wno-comment
> -DUTF8_SUPPORT -DORA_OCI_VERSION=\"11.2.0.1\" -DORA_OCI_102 -DORA_OCI_112
> Oracle.c
> cc -c  -I/usr/include/oracle/11.2/client
>  -I/pro/lib/perl5/site_perl/5.12.0/i686-linux-64int-ld/auto/DBI -DDEBUGGING
> -fno-strict-aliasing -pipe -fstack-protector -I/pro/local/include
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.25\"
> -DXS_VERSION=\"1.25\" -fPIC
> "-I/pro/lib/perl5/5.12.0/i686-linux-64int-ld/CORE"  -Wall -Wno-comment
> -DUTF8_SUPPORT -DORA_OCI_VERSION=\"11.2.0.1\" -DORA_OCI_102 -DORA_OCI_112
> dbdimp.c
> dbdimp.c: In function ‘dbd_rebind_ph_char’:
> dbdimp.c:2513:20: warning: cast from pointer to integer of different size
> dbdimp.c: In function ‘dbd_rebind_ph_xml’:
> dbdimp.c:2711:17: warning: cast to pointer from integer of different size
> dbdimp.c: In function ‘ora_bind_ph’:
> dbdimp.c:3004:6: warning: format ‘%ld’ expects type ‘long int’, but
> argument 2 has type ‘IV’
> dbdimp.c:3013:5: warning: format ‘%ld’ expects type ‘long int’, but
> argument 2 has type ‘IV’
> dbdimp.c:3047:4: warning: format ‘%ld’ expects type ‘long int’, but
> argument 3 has type ‘IV’
> cc -c  -I/usr/include/oracle/11.2/client
>  -I/pro/lib/perl5/site_perl/5.12.0/i686-linux-64int-ld/auto/DBI -DDEBUGGING
> -fno-strict-aliasing -pipe -fstack-protector -I/pro/local/include
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.25\"
> -DXS_VERSION=\"1.25\" -fPIC
> "-I/pro/lib/perl5/5.12.0/i686-linux-64int-ld/CORE"  -Wall -Wno-comment
> -DUTF8_SUPPORT -DORA_OCI_VERSION=\"11.2.0.1\" -DORA_OCI_102 -DORA_OCI_112
> oci8.c
> oci8.c: In function ‘ora_blob_read_mb_piece’:
> oci8.c:1645:4: warning: format ‘%ld’ expects type ‘long int’, but argument
> 6 has type ‘UV’
> oci8.c: In function ‘ora_st_fetch’:
> oci8.c:3802:9: warning: format ‘%ld’ expects type ‘long int’, but argument
> 4 has type ‘IV’
> oci8.c:3810:9: warning: format ‘%ld’ expects type ‘long int’, but argument
> 3 has type ‘IV’
> Running Mkbootstrap for DBD::Oracle ()
> chmod 644 Oracle.bs
> rm -f blib/arch/auto/DBD/Oracle/Oracle.so
> LD_RUN_PATH="/pro/oracle/v11.2/lib" cc  -shared -O2 -L/pro/local/lib
> -fstack-protector Oracle.o dbdimp.o oci8.o  -o
> blib/arch/auto/DBD/Oracle/Oracle.so        \
>           -L/pro/oracle/v11.2/lib -L/pro/3gl/CPAN/dbd-oracle-1.25/../..
> -locci -lclntsh -lpthread      \
>
> chmod 755 blib/arch/auto/DBD/Oracle/Oracle.so
> cp Oracle.bs blib/arch/auto/DBD/Oracle/Oracle.bs
> chmod 644 blib/arch/auto/DBD/Oracle/Oracle.bs
> /pro/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
> /pro/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
>
>
> $ 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.012000 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/36lob_leak.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 ............ 6/51
>
>
>
> t/58object.t ............ Dubious, test returned 4 (wstat 1024, 0x400)
> Failed 4/51 subtests
> t/60reauth.t ............ skipped: ORACLE_USERID_2 not defined.
> t/70meta.t .............. ok
> t/80ora_charset.t ....... skipped: Database is set up as US7ASCII
>
> Test Summary Report
> -------------------
> t/58object.t          (Wstat: 1024 Tests: 51 Failed: 4)
>  Failed tests:  27, 31, 33-34
>  Non-zero exit status: 4
> Files=31, Tests=2133, 197 wallclock secs ( 0.77 usr  0.07 sys +  5.43 cusr
>  0.72 csys =  6.99 CPU)
> Result: FAIL
> Failed 1/31 test programs. 4/2133 subtests failed.
> make: *** [test_dynamic] Error 255
>
> $ prove -vwb t/58object.t
> 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
> ok 6 - old: Prepare select
> ok 7 - old: Execute select
> ok 8 - old: Fetch first row
> ok 9 - old: Row 1 column 2 is an ARRAY
> ok 10 - old: Row 1 column 2 is has 2 elements
> ok 11 - old: Fetch second row
> ok 12 - old: Row 2 column 2 is an ARRAY
> ok 13 - old: Row 2 column 2 is has 2 elements
> ok 14 - old: Fetch third row
> ok 15 - old: Row 3 column 2 is an ARRAY
> ok 16 - old: Row 3 column 2 is has 2 elements
> ok 17 - old: No more rows expected
> ok 18 - new: Prepare select
> ok 19 - new: Execute select
> ok 20 - new: Fetch first row
> ok 21 - new: Row 1 column 2 is an DBD:Oracle::Object
> ok 22 - new: Row 1 column 2 object type
> ok 23 - new: Row 1 column 2 object attributes
> ok 24 - new: Fetch second row
> ok 25 - new: Row 2 column 2 is an DBD::Oracle::Object
> ok 26 - new: Row 2 column 2 object type
> not ok 27 - new: Row 1 column 2 object attributes
>
> #   Failed test 'new: Row 1 column 2 object attributes'
> #   at t/58object.t line 160.
> #     Structures begin differing at:
> #          $got->[7] = '12345.678899999999'
> #     $expected->[7] = '12345.6789'
> ok 28 - new: Fetch third row
> ok 29 - new: Row 3 column 2 is an DBD::Oracle::Object
> ok 30 - new: Row 3 column 2 object type
> not ok 31 - new: Row 1 column 2 object attributes
>
> #   Failed test 'new: Row 1 column 2 object attributes'
> #   at t/58object.t line 167.
> #     Structures begin differing at:
> #          $got->[7] = '777.666000000000054'
> #     $expected->[7] = '777.666'
> ok 32 - new: No more rows expected
> not ok 33 - DBD::Oracle::Object->attr_hash
>
> #   Failed test 'DBD::Oracle::Object->attr_hash'
> #   at t/58object.t line 182.
> #     Structures begin differing at:
> #          $got->{AMOUNT} = '777.666000000000054'
> #     $expected->{AMOUNT} = '777.666'
> not ok 34 - DBD::Oracle::Object->attr
>
> #   Failed test 'DBD::Oracle::Object->attr'
> #   at t/58object.t line 183.
> #     Structures begin differing at:
> #          $got->{AMOUNT} = '777.666000000000054'
> #     $expected->{AMOUNT} = '777.666'
> ok 35 - DBD::Oracle::Object->attr("NAME")
> ok 36 - new: Prepare select with nested table of objects
> ok 37 - new: Execute (nested table)
> ok 38 - new: Fetch first row (nested table)
> ok 39 - Check propertes of first (and only) item in nested table
> ok 40 - new: No more rows expected (nested table)
> ok 41 - new: Prepare select with nested object
> ok 42 - new: Execute (nested object)
> ok 43 - new: Fetch first row (nested object)
> ok 44 - Check obj.num
> ok 45 - Check obj.obj
> ok 46 - new: Fetch second row (nested object)
> ok 47 - Check obj.num
> ok 48 - Check obj.obj
> ok 49 - new: Fetch third row (nested object)
> ok 50 - Check obj
> ok 51 - new: No more rows expected (nested object)
> # Looks like you failed 4 tests of 51.
> Dubious, test returned 4 (wstat 1024, 0x400)
> Failed 4/51 subtests
>
> Test Summary Report
> -------------------
> t/58object.t (Wstat: 1024 Tests: 51 Failed: 4)
>  Failed tests:  27, 31, 33-34
>  Non-zero exit status: 4
> Files=1, Tests=51,  4 wallclock secs ( 0.04 usr  0.00 sys +  0.08 cusr
>  0.01 csys =  0.13 CPU)
> Result: FAIL
>
>
> --
> H.Merijn Brand  http://tux.nl      Perl Monger  http://amsterdam.pm.org/
> using 5.00307 through 5.12 and porting perl5.13.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/
>

--
The best compliment you could give Pythian for our service is a referral.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.