Re: ANNOUNCE: DBD::Oracle 1.24 Release Candidate 1

Martin Evans <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.sybase.devel
Organization Easysoft Limited
Message-ID <[email protected]>
John Scoles 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
> 
> anyway here is a complete list
> 
> 
>  Added extended support for 64 bit clients in Makefile.PL from Ralph
> Doncaster
>   Added extended nvarchar support from Jan Mach
>   Added support for the TYPE attribute on bind_col and the new DBI
> bind_col attributes StrictlyTyped and DiscardString from Martin J. Evans
>   Added ora_ncs_buff_mtpl and environment var ORA_DBD_NCS_BUFFER so we
> can control the size of the buffer when doing nclob reads
>   Fix for bug in for  changes to row fetch buffer mostly lobs and object
> fetches
>   Fix for rt.cpan.org Ticket #=49741 Oracle.h has commented out params
> in OCIXMLTypeCreateFromSrc from Kartik Thakore
>   Added from rt.cpan.org Ticket #=49436 Patch to add support for a few
> Oracle data types to type_info_all from David Hull
>   Added from rt.cpan.org Ticket #=49435 Patch to add support for a few
> Oracle data types to dbd_describe from David Hull
>   Fix for rt.cpan.org Ticket #=49331 Bad code example in POD from John
> Scoles
>   Added support for looking up OCI_DTYPE_PARAM Attributes
>   Added support for looking up csform values
>   Fix for rt.cpan.org Ticket #=46763,46998 enhancement -Rowcache size is
> now being properly implemented with row fetch buffer from John Scoles
>   Fix for rt.cpan.org Ticket #=46448 enhancement -Errors returned by
> procedures are now unicode strings from Martin Evans, John Scoles and
> Tim Bunce
>   Fix for rt.cpan.org Ticket #=47503 bugfix - using more than 1 LOB in
> insert broken from APLA
>   Fix for rt.cpan.org Ticket #=46613 bugfix - sig-abort on nested
> objects with ora_objects=1 from TomasP
>   Fix for rt.cpan.org Ticket #=46661 DBD::Oracle hungs when
> insert/update with LOB and quoted table name from APLA
>   Fix for rt.cpan.org Ticket #=46246 fetching from nested cursor
> (returned from procedure) leads to application crash (abort) from John
> Scoles
>   Fix for rt.cpan.org Ticket #=46016  LOBs bound with ora_field broken
> from RKITOVER
>   Fix for bug in 58object.t when test run as externally identified user
> from Charles Jardine
> 
> 

Thanks for this John.

All tests pass on "v5.10.0 built for i486-linux-gnu-thread-multi" with
instant client 11.1 to Oracle 11.1.0 and the latest (from subversion)
DBI except 26exe_array (the usual problem).

I have a few minor comments.

1.

The following minor patch makes a lot of warnings go away because ah is
actually an OCIServer * and not a signed long:

Index: ocitrace.h
===================================================================
--- ocitrace.h	(revision 13710)
+++ ocitrace.h	(working copy)
@@ -267,7 +267,7 @@
 	stat=OCIAttrSet(th,ht,ah,s1,a,eh);				\
 	(DBD_OCI_TRACEON) ? PerlIO_printf(DBD_OCI_TRACEFP,			\
 		"%sAttrSet(%p,%s, %p,%lu,Attr=%s,%p)=%s\n",			\
-		OciTp,
(void*)th,oci_hdtype_name(ht),sl_t(ah),ul_t(s1),oci_attr_name(a),(void*)eh,
\
+		OciTp, (void*)th,oci_hdtype_name(ht),(void
*)ah,ul_t(s1),oci_attr_name(a),(void*)eh,	\
 		oci_status_name(stat)),stat : stat

 #define
OCIBindByName_log_stat(sh,bp,eh,p1,pl,v,vs,dt,in,al,rc,mx,cu,md,stat)	\

2.

There are a number of typos in the Changes file for 1.24:

extened (*2) => extended
enviornment => environment
"Fix for bug in for  changes" => ? what does this mean?
implimented => implemented
hungs => hangs

3.

Since 26exe_array fails for a growing number of people (758 hits on
google for 26exe_array fail) I think it would be useful to explain why
somewhere and add a Test::More::diag (or note, but needs a later
Test::More - I think DBI needs note now too). I would happily supply the
text but I still don't understand exactly why it fails.

4.

There are a number of comments on annocpan (and typos) which would be
worth considering.

5.

What does ora_ncs_buff_mtpl and ORA_DBD_NCS_BUFFER in the Changes refer
to - I cannot find any documentation.

I have not tested the rts I reported yet or the bind_col changes but
once I've done that I'll report back again and install it on our test
system.

Martin
-- 
Martin J. Evans
Easysoft Limited
http://www.easysoft.com
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.