The way you're suggesting works, however that solution is a bit messy for
the requirements.
I'd like to try and get the implementation going correctly on Solaris for
this feature, it works fine on other Windows/Linux.

On Mon, Apr 6, 2009 at 1:55 PM, Martin Gainty <mgai...@hotmail.com> wrote:

>  If you look at how VARRAYs are created in Oracle they are Variable Array
> of a primitive
> type e.g.
>
> http://www.oracle.com/technology/sample_code/tech/java/codesnippet/jdbc/varray/index.html
>
> what happens when you declare your VARRAY to be String or Integer instead
> of Abstract
> ?
> Martin
> ______________________________________________
> Verzicht und Vertraulichkeitanmerkung / Disclaimer and confidentiality note
>
>
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger 
> sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung 
> oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich 
> dem Austausch von Informationen und entfaltet keine rechtliche 
> Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen 
> wir keine Haftung fuer den Inhalt uebernehmen.
> This message is confidential and may be privileged. If you are not the 
> intended recipient, we kindly ask you to  please inform the sender. Any 
> unauthorised dissemination or copying hereof is prohibited. This message 
> serves for information purposes only and shall not have any legally binding 
> effect. Given that e-mails can easily be subject to manipulation, we can not 
> accept any liability for the content provided.
>
>
>
>
>
>
> > Date: Mon, 6 Apr 2009 13:22:58 +1200
> > Subject: Re: DBD Oracle 1.20 ORA-24334 Error
> > From: jamie.nichol...@gmail.com
> > To: sco...@pythian.com
> > CC: dbi-users@perl.org
>
> >
> > Found the fix for the t/10gen.t exit code tests in the README.help.txt
> under
> > "repetitive connect/open/close/disconnect" tests
> > However still no luck with my initial test 'VARRAY of abstract data
> types',
> > it's still returning
> >
> > DBD::Oracle::db prepare failed: ORA-24334: no descriptor for this
> position
> > (DBD ERROR: OCIParamGet)
> >
> > Output of latest make test with t/10gen.t passing
> >
> > ux11:/home/bmpe/bmpadme/DBD-Oracle-1.21 > make test
> > PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e"
> > "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
> > t/01base................ok
> >
> > t/10general.............ok
> >
> > t/12impdata.............ok
> >
> > t/14threads.............ok
> >
> > t/15nls.................ok
> >
> > t/20select..............ok
> >
> > t/21nchar............... Database and client versions and character sets:
> > Database 9.2.0.8.0 CHAR set is US7ASCII (Non-Unicode), NCHAR set is
> > AL16UTF16 (Unicode)
> > Client 10.2.0.4 NLS_LANG is '<unset>', NLS_NCHAR is '<unset>'
> > t/21nchar...............ok
> >
> > t/22nchar_al32utf8......ok
> >
> > t/22nchar_utf8..........ok
> >
> > t/23wide_db.............skipped
> > all skipped: Database character set is not Unicode
> > t/23wide_db_8bit........skipped
> > all skipped: Database character set is not Unicode
> > t/23wide_db_al32utf8....skipped
> > all skipped: Database character set is not Unicode
> > t/24implicit_utf8.......ok
> >
> > t/25plsql...............ok 42/82(DBI::errstr undefined)
> >
> > t/25plsql...............FAILED test 43
> >
> > Failed 1/82 tests, 98.78% okay
> > t/26exe_array...........ok
> >
> > t/28array_bind..........ok
> >
> > t/30long................ok
> >
> > 122/470 skipped: various reasons
> > t/31lob.................ok
> >
> > t/32xmltype.............ok
> >
> > t/34pres_lobs...........ok
> >
> > t/40ph_type.............ok 3/19 Placeholder behaviour for ora_type=1 (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.............ok
> >
> > t/50cursor..............ok
> >
> > t/51scroll..............ok
> >
> > t/55nested..............ok
> >
> > t/56embbeded............ok
> >
> > t/60reauth..............ORACLE_USERID_2 not defined. Tests skipped.
> > skipped
> > all skipped: no reason given
> > t/70meta................ok
> >
> > t/80ora_charset.........NOK 9# Failed test (t/80ora_charset.t at line
> > 83)
> > # got: '?'
> > # expected: '°'
> > # Failed test (t/80ora_charset.t at line 84)
> > t/80ora_charset.........NOK 10# got: '?'
> >
> > # expected: '°'
> > t/80ora_charset.........ok 12/14# Failed test (t/80ora_charset.t at line
> > 83)
> > t/80ora_charset.........NOK 13# got: '?'
> >
> > # expected: '°'
> > # Failed test (t/80ora_charset.t at line 84)
> > # got: '?'
> > t/80ora_charset.........NOK 14# expected: '°'
> >
> > # Looks like you failed 4 tests of 14.
> > t/80ora_charset.........dubious
> >
> > Test returned status 4 (wstat 1024, 0x400)
> > DIED. FAILED tests 9-10, 13-14
> > Failed 4/14 tests, 71.43% okay
> > Failed Test Stat Wstat Total Fail Failed List of Failed
> >
> -------------------------------------------------------------------------------
> > t/25plsql.t 82 1 1.22% 43
> > t/80ora_charset.t 4 1024 14 4 28.57% 9-10 13-14
> > 4 tests and 122 subtests skipped.
> > Failed 2/28 test scripts, 92.86% okay. 5/2033 subtests failed, 99.75%
> okay.
> > make: *** [test_dynamic] Error 2
> >
> >
> > On Mon, Apr 6, 2009 at 9:18 AM, Jamie Nicholson
> > <jamie.nichol...@gmail.com>wrote:
> >
> > > I removed the line from dbdimp and no luck
> > >
> > > > dbdimp.c:3269: warning: unused variable `sv2
> > >
> > > Also I investigated the funny return codes being returned in t/10gen.t.
> > > Firstly I wrote a seperate script and the results were as expected
> > >
> > > Then I found that if I put the test before this line it would also work
> -
> > > *
> > > line 20: my $dbh = DBI->connect($dsn, $dbuser, '');
> > > *
> > > If I put the test after this line it wouldn't work and started
> returning
> > > unexpected results
> > > What would the DBI connect be doing that would upset the exit status,
> very
> > > strange.
> > >
> > > Then I tried rewritting the Line20 DBI connect to use the following
> format
> > > my $dbh =
> > >
> DBI->connect("dbi:Oracle:host=$oracleHost;sid=$oracleDbId",$oracleUser,$oraclePass,
> > >
> > > {RaiseError =>0 ,AutoCommit =>0})
> > >
> > > And the test then worked successfully......
> > >
> > >
> > >
> > > On Sun, Apr 5, 2009 at 10:48 AM, <sco...@pythian.com> wrote:
> > >
> > >> > Thanks John, if you need me to run any debugging on Solaris or
> anything
> > >> > let
> > >> > me know.
> > >> > I would suspect also that it is OS related.
> > >> >
> > >> > On the premise instant client and also tried to run perl Makefile.PL
> -V
> > >> > 9.2
> > >> > & with -v 10.2.0.4
> > >> >
> > >> > The only thing that is out of place is this compile a warning is
> thrown
> > >> > when
> > >> > the make command is run
> > >> >
> > >> > gcc -c -I/home/bmpe/bmpadme/instantclient_10_2/sdk/include
> > >> >
> -I/opt/perl586/lib/site_perl/5.8.6/sun4-solaris-thread-multi/auto/DBI
> > >> > -D_REENTRANT -fno-strict-aliasing -pipe -I/usr/local/include
> > >> > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"1.21\"
> > >> > -DXS_VERSION=\"1.21\" -fPIC
> > >> > "-I/opt/perl586/lib/5.8.6/sun4-solaris-thread-multi/CORE" -Wall
> > >> > -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT
> > >> -DORA_OCI_VERSION=\"10.2.0.4\"
> > >> > dbdimp.c
> > >> > dbdimp.c: In function `ora_st_execute_array':
> > >> > dbdimp.c:3269: warning: unused variable `sv2'
> > >> >
> > >> > Full output of the make,
> > >> >
> > >> Not sure if that would be the culperate. If I remember correctly I
> > >> removed it in 1.22 as it was a memory leak source. Try getting rid of
> it
> > >> and see what happens?
> > >>
> > >>
> > >> > ux11:/home/bmpe/bmpadme/DBD-Oracle-1.21 > make
> > >> > Skip blib/lib/DBD/Oracle.pm (unchanged)
> > >> > Skip blib/lib/DBD/mkta.pl (unchanged)
> > >> > Skip blib/lib/oraperl.ph (unchanged)
> > >> > Skip blib/arch/auto/DBD/Oracle/dbdimp.h (unchanged)
> > >> > Skip blib/arch/auto/DBD/Oracle/ocitrace.h (unchanged)
> > >> > Skip blib/lib/Oraperl.pm (unchanged)
> > >> > Skip blib/arch/auto/DBD/Oracle/Oracle.h (unchanged)
> > >> > cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm
> > >> > Skip blib/lib/DBD/Oracle/GetInfo.pm (unchanged)
> > >> > gcc -c -I/home/bmpe/bmpadme/instantclient_10_2/sdk/include
> > >> >
> -I/opt/perl586/lib/site_perl/5.8.6/sun4-solaris-thread-multi/auto/DBI
> > >> > -D_REENTRANT -fno-strict-aliasing -pipe -I/usr/local/include
> > >> > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"1.21\"
> > >> > -DXS_VERSION=\"1.21\" -fPIC
> > >> > "-I/opt/perl586/lib/5.8.6/sun4-solaris-thread-multi/CORE" -Wall
> > >> > -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT
> > >> -DORA_OCI_VERSION=\"10.2.0.4\"
> > >> > DBD_ORA_OBJ.c
> > >> > gcc -c -I/home/bmpe/bmpadme/instantclient_10_2/sdk/include
> > >> >
> -I/opt/perl586/lib/site_perl/5.8.6/sun4-solaris-thread-multi/auto/DBI
> > >> > -D_REENTRANT -fno-strict-aliasing -pipe -I/usr/local/include
> > >> > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"1.21\"
> > >> > -DXS_VERSION=\"1.21\" -fPIC
> > >> > "-I/opt/perl586/lib/5.8.6/sun4-solaris-thread-multi/CORE" -Wall
> > >> > -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT
> > >> -DORA_OCI_VERSION=\"10.2.0.4\"
> > >> > Oracle.c
> > >> > *gcc -c -I/home/bmpe/bmpadme/instantclient_10_2/sdk/include
> > >> >
> -I/opt/perl586/lib/site_perl/5.8.6/sun4-solaris-thread-multi/auto/DBI
> > >> > -D_REENTRANT -fno-strict-aliasing -pipe -I/usr/local/include
> > >> > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"1.21\"
> > >> > -DXS_VERSION=\"1.21\" -fPIC
> > >> > "-I/opt/perl586/lib/5.8.6/sun4-solaris-thread-multi/CORE" -Wall
> > >> > -Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT
> > >> -DORA_OCI_VERSION=\"10.2.0.4\"
> > >> > dbdimp.c
> > >> > dbdimp.c: In function `ora_st_execute_array':
> > >> > dbdimp.c:3269: warning: unused variable `sv2'*
> > >> > gcc -c -I/home/bmpe/bmpadme/instantclient_10_2/sdk/include
> > >> >
> -I/opt/perl586/lib/site_perl/5.8.6/sun4-solaris-thread-multi/auto/DBI
> > >> > -D_REENTRANT -fno-strict-aliasing -pipe -I/usr/local/include
> > >> > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"1.21\"
> > >> > -DXS_VERSION=\"1.21\" -fPIC
> > >> > "-I/opt/perl586/lib/5.8.6/sun4-solaris-thread-multi/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.so
> > >> > LD_RUN_PATH="/home/bmpe/bmpadme/instantclient_10_2" gcc -G
> > >> > -L/usr/local/lib
> > >> > DBD_ORA_OBJ.o Oracle.o dbdimp.o oci8.o -o
> > >> > blib/arch/auto/DBD/Oracle/Oracle.so
> > >> > -L/home/bmpe/bmpadme/instantclient_10_2 -lclntsh
> > >> > 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
> > >> > cp ora_explain blib/script/ora_explain
> > >> > /usr/local/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
> > >> >
> > >> >
> > >> > On Sun, Apr 5, 2009 at 8:05 AM, <sco...@pythian.com> wrote:
> > >> >
> > >> >> I tested it and I got the correct values back
> > >> >> Looking at the error you are now getting in 10gen that is an OS
> related
> > >> >> error This is the basic check that we can fork subprocesses and
> wait
> > >> for
> > >> >> the status after having connected to Oracle
> > >> >>
> > >> >> It is only suppose to run on solaris if the oci is gt 9.
> > >> >>
> > >> >> In your case this is true but your DB is 9.2 which leads me to
> thing
> > >> it
> > >> >> is the combination of 9.2 db and solaris that is the root cause.
> > >> >>
> > >> >> You might not have a work around for this. I am able to get this to
> > >> >> work
> > >> >> on windos and linux without any problem
> > >> >>
> > >> >> I will look a little further though.
> > >> >>
> > >> >> Cheers
> > >> >> John Scoles
> > >> >>
> > >> >>
> > >> >> > Have been trying to get a good install all day for DBD 1.21 /
> DBD1.22
> > >> >> on
> > >> >> > Solaris 5.8, it installs now.
> > >> >> > However it still fails on the TEST_ORA table.
> > >> >> >
> > >> >> > As I said I tried it on my Windows box using Activestate/ppm
> which
> > >> >> queried
> > >> >> > the TEST_ORA table successfully
> > >> >> >
> > >> >> > The latest Solaris build I used was as follows
> > >> >> >
> > >> >> > instantclient-*10.2.0.4.0* 32bit* - this seems to be the version
> of
> > >> >> > instant
> > >> >> > client that works*
> > >> >> > perl, v5.8.6 built for sun4-solaris-thread-multi
> > >> >> > SunOS 5.8
> > >> >> > Oracle 9.2.0.8.0
> > >> >> > DBD 1.21
> > >> >> >
> > >> >> > After running a sucessful perl Makefile.PL, make, then make test
> I
> > >> >> read
> > >> >> > the
> > >> >> > following post by John
> > >> >> >
> > >> >> >
> http://www.nntp.perl.org/group/perl.dbi.users/2008/06/msg32950.html
> > >> >> >
> > >> >> > I then ran the make install and re-tried my sample test but still
> the
> > >> >> > issue
> > >> >> > occurs, otherwsise standard SQL works fine.
> > >> >> >
> > >> >> > DBD::Oracle::db prepare failed: ORA-24334: no descriptor for this
> > >> >> position
> > >> >> > (DBD ERROR: OCIParamGet) [for Statement "select * from TEST_ORA"]
> at
> > >> >> > ./popAMAError.pl line 34.
> > >> >> >
> > >> >> > The output from Make test
> > >> >> >
> > >> >> >
> > >> >> > PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM"
> "-e"
> > >> >> > "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
> > >> >> > t/01base................ok
> > >> >> >
> > >> >> > t/10general.............# Failed test (t/10general.t at line 36)
> > >> >> > t/10general.............NOK 1# got: '-1'
> > >> >> >
> > >> >> > # expected: '256'
> > >> >> > # Failed test (t/10general.t at line 37)
> > >> >> > # got: '-1'
> > >> >> > # expected: '0'
> > >> >> > t/10general.............ok 33/33# Looks like you failed 2 tests
> of
> > >> 33.
> > >> >> >
> > >> >> > t/10general.............dubious
> > >> >> >
> > >> >> > Test returned status 2 (wstat 512, 0x200)
> > >> >> > DIED. FAILED tests 1-2
> > >> >> > Failed 2/33 tests, 93.94% okay
> > >> >> > t/12impdata.............ok
> > >> >> >
> > >> >> > t/14threads.............ok
> > >> >> >
> > >> >> > t/15nls.................ok
> > >> >> >
> > >> >> > t/20select..............ok
> > >> >> >
> > >> >> > t/21nchar............... Database and client versions and
> character
> > >> >> sets:
> > >> >> > Database 9.2.0.8.0 CHAR set is US7ASCII (Non-Unicode), NCHAR set
> is
> > >> >> > AL16UTF16 (Unicode)
> > >> >> > Client 10.2.0.4 NLS_LANG is '<unset>', NLS_NCHAR is '<unset>'
> > >> >> > t/21nchar...............ok
> > >> >> >
> > >> >> > t/22nchar_al32utf8......ok
> > >> >> >
> > >> >> > t/22nchar_utf8..........ok
> > >> >> >
> > >> >> > t/23wide_db.............skipped
> > >> >> > all skipped: Database character set is not Unicode
> > >> >> > t/23wide_db_8bit........skipped
> > >> >> > all skipped: Database character set is not Unicode
> > >> >> > t/23wide_db_al32utf8....skipped
> > >> >> > all skipped: Database character set is not Unicode
> > >> >> > t/24implicit_utf8.......ok
> > >> >> >
> > >> >> > t/25plsql...............ok 42/82(DBI::errstr undefined)
> > >> >> >
> > >> >> > t/25plsql...............FAILED test 43
> > >> >> >
> > >> >> > Failed 1/82 tests, 98.78% okay
> > >> >> > t/26exe_array...........ok
> > >> >> >
> > >> >> > t/28array_bind..........ok
> > >> >> >
> > >> >> > t/30long................ok
> > >> >> >
> > >> >> > 122/470 skipped: various reasons
> > >> >> > t/31lob.................ok
> > >> >> >
> > >> >> > t/32xmltype.............ok
> > >> >> >
> > >> >> > t/34pres_lobs...........ok
> > >> >> >
> > >> >> > t/40ph_type.............ok 3/19 Placeholder behaviour for
> ora_type=1
> > >> >> (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.............ok
> > >> >> >
> > >> >> > t/50cursor..............ok
> > >> >> >
> > >> >> > t/51scroll..............ok
> > >> >> >
> > >> >> > t/55nested..............ok
> > >> >> >
> > >> >> > t/56embbeded............ok
> > >> >> >
> > >> >> > t/60reauth..............ORACLE_USERID_2 not defined. Tests
> skipped.
> > >> >> > skipped
> > >> >> > all skipped: no reason given
> > >> >> > t/70meta................ok
> > >> >> >
> > >> >> > t/80ora_charset.........ok 8/14# Failed test (t/80ora_charset.t
> > >> at
> > >> >> > line
> > >> >> > 83)
> > >> >> > # got: '?'
> > >> >> > # expected: '°'
> > >> >> > t/80ora_charset.........NOK 9# Failed test (t/80ora_charset.t at
> > >> >> line
> > >> >> > 84)
> > >> >> > # got: '?'
> > >> >> > # expected: '°'
> > >> >> > t/80ora_charset.........ok 12/14# Failed test (t/80ora_charset.t
> > >> >> at
> > >> >> > line
> > >> >> > 83)
> > >> >> > # got: '?'
> > >> >> > # expected: '°'
> > >> >> > t/80ora_charset.........NOK 13# Failed test (t/80ora_charset.t at
> > >> >> line
> > >> >> > 84)
> > >> >> > t/80ora_charset.........NOK 14# got: '?'
> > >> >> >
> > >> >> > # expected: '°'
> > >> >> > # Looks like you failed 4 tests of 14.
> > >> >> > t/80ora_charset.........dubious
> > >> >> >
> > >> >> > Test returned status 4 (wstat 1024, 0x400)
> > >> >> > DIED. FAILED tests 9-10, 13-14
> > >> >> > Failed 4/14 tests, 71.43% okay
> > >> >> > Failed Test Stat Wstat Total Fail Failed List of Failed
> > >> >> >
> > >> >>
> > >>
> -------------------------------------------------------------------------------
> > >> >> > t/10general.t 2 512 33 2 6.06% 1-2
> > >> >> > t/25plsql.t 82 1 1.22% 43
> > >> >> > t/80ora_charset.t 4 1024 14 4 28.57% 9-10 13-14
> > >> >> > 4 tests and 122 subtests skipped.
> > >> >> > Failed 3/28 test scripts, 89.29% okay. 7/2033 subtests failed,
> 99.66%
> > >> >> > okay.
> > >> >> > make: *** [test_dynamic] Error 2
> > >> >> >
> > >> >> >
> > >> >> > On Fri, Apr 3, 2009 at 11:46 AM, Jamie Nicholson
> > >> >> > <jamie.nichol...@gmail.com>wrote:
> > >> >> >
> > >> >> >> Tried this using Oracle 1.21 on my Windoze PC and it works.
> > >> >> >> Looks like I'm off to upgrade the Oracle Client as per option 2
> in
> > >> >> this
> > >> >> >> archive
> > >> >> >>
> > >> >> >>
> http://www.nntp.perl.org/group/perl.dbi.users/2008/04/msg32777.html
> > >> >> >>
> > >> >> >
> > >> >>
> > >> >>
> > >> >
> > >>
> > >>
>

Reply via email to