Re: ANNOUNCE: DBD::Oracle 1.17 release candidate 3

2006-01-12 Thread H.Merijn Brand
On Wed, 11 Jan 2006 23:57:58 +, Tim Bunce [EMAIL PROTECTED] wrote:

 http://www.data-plan.com/public/DBD-Oracle-1.17-RC3.tar.gz
 
 We're getting there. This one fixes the two issues raised against RC2
 (thanks Andy and Steffen).

HP-UX 11.23, perl-5.8.7-dor/64, DBI 1.50, HP C-ANSI-C, Oracle-9.2.0.2
HP-UX 11.23/64 U  rx1620/64 Itanium 2/1600(2) ia64  2037 Mb

--8---
Your LD_LIBRARY_PATH env var is set to ''
Your LD_LIBRARY_PATH env var doesn't include '/pro/oracle/v920/lib' but 
probably needs to.
--8---

on HP-UX that is set in SHLIB_PATH. I think they should be treated equal

# echo $SHLIB_PATH
/pro/oracle/v920/lib:/pro/asql/o83F/bin:/pro/asql/o83F/lib:/usr/lib:/etc/opt/resmon/lib:/opt/gnome/lib:/pro/local/lib:/pro/oracle/v920/lib
#

I just discovered this week that the optimizer of the most recent HP C-ANSI-C
on HP-UX 11.23 (version B.06.05) is broken. Perl itself won't build with +O2
or up, so the hints in perl now drop to +O1

perl-5.8.7-dor didn't have that problem, so we should still be safe here.
Just to let you know.

Some compile warnings:
--8---
cc -c  -I/pro/oracle/v920/plsql/public -I/pro/oracle/v920/rdbms/public -I/pro/or
acle/v920/rdbms/demo -I/pro/oracle/v920/rdbms/demo -I/pro/oracle/v920/rdbms/publ
ic -I/pro/oracle/v920/plsql/public -I/pro/oracle/v920/network/public -I/pro/lib/
perl5/site_perl/5.8.7/IA64.ARCHREV_0-LP64/auto/DBI/ -Ae -DDEBUGGING +Z -z -D_HPU
X_SOURCE -Wl,+vnocompatwarnings +DD64 -I/pro/local/include -D_LARGEFILE_SOURCE -
D_FILE_OFFSET_BITS=64 +O2 +Onolimit   -DVERSION=\1.17\ -DXS_VERSION=\1.17\ +
Z -I/pro/lib/perl5/5.8.7/IA64.ARCHREV_0-LP64/CORE  -DUTF8_SUPPORT -DNEW_OCI_IN
IT -DORA_OCI_VERSION=\9.2.0.2\ Oracle.c
Oracle.xs, line 271: warning #2550-D: variable csid was set but never used
  ub2 csid;
  ^

cc -c  -I/pro/oracle/v920/plsql/public -I/pro/oracle/v920/rdbms/public -I/pro/or
acle/v920/rdbms/demo -I/pro/oracle/v920/rdbms/demo -I/pro/oracle/v920/rdbms/publ
ic -I/pro/oracle/v920/plsql/public -I/pro/oracle/v920/network/public -I/pro/lib/
perl5/site_perl/5.8.7/IA64.ARCHREV_0-LP64/auto/DBI/ -Ae -DDEBUGGING +Z -z -D_HPU
X_SOURCE -Wl,+vnocompatwarnings +DD64 -I/pro/local/include -D_LARGEFILE_SOURCE -
D_FILE_OFFSET_BITS=64 +O2 +Onolimit   -DVERSION=\1.17\ -DXS_VERSION=\1.17\ +
Z -I/pro/lib/perl5/5.8.7/IA64.ARCHREV_0-LP64/CORE  -DUTF8_SUPPORT -DNEW_OCI_IN
IT -DORA_OCI_VERSION=\9.2.0.2\ dbdimp.c
dbdimp.c, line 1179: warning #2550-D: variable sth_i was set but never used
SV *sth_i;
^

dbdimp.c, line 45: warning #2550-D: variable ora_login_nomsg was set but
  never used
  static int ora_login_nomsg;   /* don't fetch real login errmsg if true  */
 ^

cc -c  -I/pro/oracle/v920/plsql/public -I/pro/oracle/v920/rdbms/public -I/pro/or
acle/v920/rdbms/demo -I/pro/oracle/v920/rdbms/demo -I/pro/oracle/v920/rdbms/publ
ic -I/pro/oracle/v920/plsql/public -I/pro/oracle/v920/network/public -I/pro/lib/
perl5/site_perl/5.8.7/IA64.ARCHREV_0-LP64/auto/DBI/ -Ae -DDEBUGGING +Z -z -D_HPU
X_SOURCE -Wl,+vnocompatwarnings +DD64 -I/pro/local/include -D_LARGEFILE_SOURCE -
D_FILE_OFFSET_BITS=64 +O2 +Onolimit   -DVERSION=\1.17\ -DXS_VERSION=\1.17\ +
Z -I/pro/lib/perl5/5.8.7/IA64.ARCHREV_0-LP64/CORE  -DUTF8_SUPPORT -DNEW_OCI_IN
IT -DORA_OCI_VERSION=\9.2.0.2\ oci8.c
oci8.c, line 132: warning #2236-D: controlling expression is constant
 OCIErrorGet_log_stat(errhp, recno, (text*)NULL, eg_errcode, errbuf,
   ^

oci8.c, line 562: warning #2177-D: function fetch_func_nty was declared
  but never referenced
  fetch_func_nty(SV *sth, imp_fbh_t *fbh, SV *dest_sv)
  ^

oci8.c, line 1094: warning #2177-D: function fbh_setup_getrefpv was
  declared but never referenced
  fbh_setup_getrefpv(imp_fbh_t *fbh, int desc_t, char *bless)
  ^
--8---

And now the good news:

bev x1:/pro/3gl/CPAN/DBD-Oracle-1.17 126  make test
PERL_DL_NONLAZY=1 /pro/bin/perl -MExtUtils::Command::MM -e test_harness(0, 
'blib/lib', 'blib/arch') t/*.t
t/01baseok
t/10general.ok
t/15nls.ok
t/20select..ok
t/21nchar... Database and client versions and character sets:
Database 9.2.0.2.0 CHAR set is US7ASCII (Non-Unicode), NCHAR set is AL16UTF16 
(Unicode)
Client 9.2.0.2 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_8bitskipped
all skipped: Database character set is not Unicode
t/23wide_db_al32utf8skipped
all skipped: Database character set is not Unicode
t/24implicit_utf8...ok
t/25plsql...ok
t/30longok
122/470 skipped: various reasons
t/31lob.ok
t/40ph_type.ok 4/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 

Re: ANNOUNCE: DBD::Oracle 1.17 release candidate 3

2006-01-12 Thread Charles Jardine

Tim Bunce wrote:

http://www.data-plan.com/public/DBD-Oracle-1.17-RC3.tar.gz

We're getting there. This one fixes the two issues raised against RC2
(thanks Andy and Steffen).

I'd be grateful for more, and wider, testing. Thanks!


Neither this release, nor RC2, work against the Instant Client
on Solaris. Makefile.PL fails with the output shown below.
The original release candidate's Makefile.PL succeeds with
the exact same environment settings (using the makefile
/jackdaw/instantclient/sdk/demo/demo.mk).


[EMAIL PROTECTED] perl Makefile.PL -v
Using DBI 1.50 (for perl 5.008007 on sun4-solaris-64) installed in 
/net/jackdaw.cam.ac.uk/jackdaw/perl/5.8.7-A/lib/site_perl/5.8.7/sun4-solaris-64/auto/DBI/

Configuring DBD::Oracle for perl 5.008007 on solaris (sun4-solaris-64)

Remember to actually *READ* the README file! Especially if you have any 
problems.

Using Oracle in /jackdaw/instantclient
PATH=/jackdaw/instantclient/bin:/jackdaw/instantclient:/jackdaw/perl/5.8.7-A/bin:/home/cj10/bin:/jackdaw/perl/bin:/jackdaw/perl/util:/jackdaw/bin:/usr/openwin/bin:/opt/SUNWspro/bin:/usr/sbin:/usr/bin:/usr/ccs/bin
DEFINE _SQLPLUS_RELEASE = 1002000100 (CHAR)
Oracle version 10.2.0.1 (10.2)

Unable to locate an oracle.mk, proc.mk or other suitable *.mk
file in your Oracle installation.  (I looked in
/jackdaw/instantclient/rdbms/demo/demo_xe.mk 
/jackdaw/instantclient/rdbms/lib/oracle.mk 
/jackdaw/instantclient/rdbms/demo/oracle.mk 
/jackdaw/instantclient/rdbms/demo/demo_rdbms.mk 
/jackdaw/instantclient/precomp/demo/proc/proc.mk 
/jackdaw/instantclient/precomp/demo/proc/demo_proc.mk 
/jackdaw/instantclient/proc/lib/proc.mk 
/jackdaw/instantclient/proc16/lib/proc16.mk under /jackdaw/instantclient)

The oracle.mk (or demo_rdbms.mk) file is part of the Oracle
RDBMS product. The proc.mk (or demo_proc.mk) file is part of
the Oracle Pro*C product.  You need to build DBD::Oracle on a
system which has one of these Oracle components installed.
(Other *.mk files such as the env_*.mk files will not work.)
Alternatively you can use Oracle Instant Client.

In the unlikely event that a suitable *.mk file is installed
somewhere non-standard you can specify where it is using the -m option:
perl Makefile.PL -m /path/to/your.mk

See README.clients.txt for more information and some alternatives.

 at Makefile.PL line 1039.
[EMAIL PROTECTED]


--
Charles Jardine - Computing Service, University of Cambridge
[EMAIL PROTECTED]Tel: +44 1223 334506, Fax: +44 1223 334679



Re: ANNOUNCE: DBI 1.50 release candidate (bug in 10General.t)

2006-01-12 Thread Charles Jardine

Tim Bunce wrote:

  http://dbi.demonweb.co.uk/public/DBI-1.50.tar.gz


I have successfully built the above release candidate under
Solaris 8 against an Oracle 10.2 Instant Client. The full
versions of things are:

SunOS 5.8 Generic_117350-26 sun4u sparc SUNW,Sun-Blade-100
This is perl, v5.8.7 built for sun4-solaris-64
SQL*Plus: Release 10.2.0.1.0

The resulting build fails one test. The error messages are:

t/10general.NOK 1
# Failed test (t/10general.t at line 25)
#  got: '65280'
# expected: '256'
t/10general.ok 13/33# Looks like you failed 1 test of 33.
t/10general.dubious

The line in question is:

is system(false), 18, 'system false should return 256';

The cause of the problem is that the Solaris version of /usr/bin/false
gives an exit code of 255, not 1.

Here is a patch which fixes this:

Index: t/10general.t
===
--- t/10general.t   (revision 2334)
+++ t/10general.t   (working copy)
@@ -22,8 +22,8 @@
 SKIP: {
skip not unix-like, 2 unless $Config{d_semctl};
# basic check that we can fork subprocesses and wait for the status
-   is system(false), 18, 'system false should return 256';
-   is system(true), 0, 'system true should return 0';
+   is system(exit 1;), 18, 'system exit 1; should return 256';
+   is system(exit 0;),0, 'system exit 0; should return 0';
 }

--
Charles Jardine - Computing Service, University of Cambridge
[EMAIL PROTECTED]Tel: +44 1223 334506, Fax: +44 1223 334679


Re: ANNOUNCE: DBD::Oracle 1.17 release candidate 3

2006-01-12 Thread Charles Jardine

Tim Bunce wrote:

http://www.data-plan.com/public/DBD-Oracle-1.17-RC3.tar.gz

We're getting there. This one fixes the two issues raised against RC2
(thanks Andy and Steffen).

I'd be grateful for more, and wider, testing. Thanks!


Neither this release, nor RC2, work against the Instant Client
on Solaris. Makefile.PL fails with the output shown below.
The original release candidate's Makefile.PL succeeds with
the exact same environment settings (using the makefile
/jackdaw/instantclient/./sdk/demo/demo.mk).


[EMAIL PROTECTED] perl Makefile.PL -v
Using DBI 1.50 (for perl 5.008007 on sun4-solaris-64) installed in 
/net/jackdaw.cam.ac.uk/jackdaw/perl/5.8.7-A/lib/site_perl/5.8.7/sun4-solaris-64/auto/DBI/

Configuring DBD::Oracle for perl 5.008007 on solaris (sun4-solaris-64)

Remember to actually *READ* the README file! Especially if you have any 
problems.

Using Oracle in /jackdaw/instantclient
PATH=/jackdaw/instantclient/bin:/jackdaw/instantclient:/jackdaw/perl/5.8.7-A/bin:/home/cj10/bin:/jackdaw/perl/bin:/jackdaw/perl/util:/jackdaw/bin:/usr/openwin/bin:/opt/SUNWspro/bin:/usr/sbin:/usr/bin:/usr/ccs/bin
DEFINE _SQLPLUS_RELEASE = 1002000100 (CHAR)
Oracle version 10.2.0.1 (10.2)

Unable to locate an oracle.mk, proc.mk or other suitable *.mk
file in your Oracle installation.  (I looked in
/jackdaw/instantclient/rdbms/demo/demo_xe.mk 
/jackdaw/instantclient/rdbms/lib/oracle.mk 
/jackdaw/instantclient/rdbms/demo/oracle.mk 
/jackdaw/instantclient/rdbms/demo/demo_rdbms.mk 
/jackdaw/instantclient/precomp/demo/proc/proc.mk 
/jackdaw/instantclient/precomp/demo/proc/demo_proc.mk 
/jackdaw/instantclient/proc/lib/proc.mk 
/jackdaw/instantclient/proc16/lib/proc16.mk under /jackdaw/instantclient)

The oracle.mk (or demo_rdbms.mk) file is part of the Oracle
RDBMS product. The proc.mk (or demo_proc.mk) file is part of
the Oracle Pro*C product.  You need to build DBD::Oracle on a
system which has one of these Oracle components installed.
(Other *.mk files such as the env_*.mk files will not work.)
Alternatively you can use Oracle Instant Client.

In the unlikely event that a suitable *.mk file is installed
somewhere non-standard you can specify where it is using the -m option:
perl Makefile.PL -m /path/to/your.mk

See README.clients.txt for more information and some alternatives.

 at Makefile.PL line 1039.
[EMAIL PROTECTED]


--
Charles Jardine - Computing Service, University of Cambridge
[EMAIL PROTECTED]Tel: +44 1223 334506, Fax: +44 1223 334679


Re: ANNOUNCE: DBD::Oracle 1.17 release candidate 3

2006-01-12 Thread Tim Bunce
On Thu, Jan 12, 2006 at 11:02:46AM +0100, H.Merijn Brand wrote:
 On Wed, 11 Jan 2006 23:57:58 +, Tim Bunce [EMAIL PROTECTED] wrote:
 
  http://www.data-plan.com/public/DBD-Oracle-1.17-RC3.tar.gz
  
  We're getting there. This one fixes the two issues raised against RC2
  (thanks Andy and Steffen).
 
 HP-UX 11.23, perl-5.8.7-dor/64, DBI 1.50, HP C-ANSI-C, Oracle-9.2.0.2
 HP-UX 11.23/64 U  rx1620/64 Itanium 2/1600(2) ia64  2037 Mb
 
 --8---
 Your LD_LIBRARY_PATH env var is set to ''
 Your LD_LIBRARY_PATH env var doesn't include '/pro/oracle/v920/lib' but 
 probably needs to.
 --8---

 # echo $SHLIB_PATH
 /pro/oracle/v920/lib:/pro/asql/o83F/bin:/pro/asql/o83F/lib:/usr/lib:/etc/opt/resmon/lib:/opt/gnome/lib:/pro/local/lib:/pro/oracle/v920/lib

 on HP-UX that is set in SHLIB_PATH. I think they should be treated equal

They should, but Makefile.PL is using what perl's own config told it to.
What does
print -V:ldlibpthname
say?

Seems like it ought to say SHLIB_PATH for HP-UX. Looking again at
perl's own INSTALL file it says:

---snip---
To build a shared libperl, the environment variable controlling shared
library search (LD_LIBRARY_PATH in most systems, DYLD_LIBRARY_PATH for
NeXTSTEP/OPENSTEP/Darwin, LIBRARY_PATH for BeOS, LD_LIBRARY_PATH/SHLIB_PATH
for HP-UX, LIBPATH for AIX, PATH for Cygwin) must be set up to include
the Perl build directory because that's where the shared libperl will
be created.  Configure arranges makefile to have the correct shared
library search settings.  You can find the name of the environment
variable Perl thinks works in your your system by

grep ldlibpthname config.sh
---snip---

Note the LD_LIBRARY_PATH/SHLIB_PATH for HP-UX.
Any idea why both are listed?

Does this fix it for you?

---snip---
--- Makefile.PL (revision 2394)
+++ Makefile.PL (working copy)
@@ -1751,6 +1751,8 @@
 $libdir ||= $OH/.ora_libdir();
 $libdir =~ s:[\\/]$::;
 my $ldlibpthname = $Config{ldlibpthname} or return;
+$ldlibpthname = 'SHLIB_PATH' if $^O eq 'hpux'
+   and not defined $ENV{$ldlibpthname};
 my $val = $ENV{$ldlibpthname} || '';
 print Your $ldlibpthname env var is set to '$val'\n;
 my @val = split /\Q$Config{path_sep}/o, $val, -1;

---snip---



 Some compile warnings:
 --8---
 Oracle.xs, line 271: warning #2550-D: variable csid was set but never used
   ub2 csid;
 dbdimp.c, line 1179: warning #2550-D: variable sth_i was set but never 
 used
 SV *sth_i;
 dbdimp.c, line 45: warning #2550-D: variable ora_login_nomsg was set but 
 never used
   static int ora_login_nomsg;   /* don't fetch real login errmsg if true  */

Fixed. Thanks.

 oci8.c, line 132: warning #2236-D: controlling expression is constant
  OCIErrorGet_log_stat(errhp, recno, (text*)NULL, eg_errcode, 
 errbuf,

I can't see the cause of that one.

 oci8.c, line 562: warning #2177-D: function fetch_func_nty was declared 
 but never referenced
   fetch_func_nty(SV *sth, imp_fbh_t *fbh, SV *dest_sv)

Incomplete support for Oracle named types. Patches welcome :)

 oci8.c, line 1094: warning #2177-D: function fbh_setup_getrefpv was 
 declared but never referenced
   fbh_setup_getrefpv(imp_fbh_t *fbh, int desc_t, char *bless)

I've added an #ifdef OCI_DTYPE_REF around the function.

 And now the good news:
 All tests successful, 4 tests and 122 subtests skipped.

Yeah!

 Database 9.2.0.2.0 CHAR set is US7ASCII (Non-Unicode), NCHAR set is AL16UTF16 
 (Unicode)
 Client 9.2.0.2 NLS_LANG is 'unset', NLS_NCHAR is 'unset'

I'm tempting fate here, but do they all still pass if run as

NLS_LANG=.UTF8 make test

Thanks.

Tim.


Re: Instant Client packages (was: [svn:dbd-oracle] r2382 - dbd-oracle/trunk)

2006-01-12 Thread Tim Bunce
Thanks!

Tim.

On Thu, Jan 12, 2006 at 12:57:54AM -, Andy Hassall wrote:
 Is it worth being a bit more specific about what Instant Client packages to
 install in README?
 
 e.g.:
 (names in quotes match those used in the headings on
 http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linu
 xsoft.html)
 
 Index: README
 ===
 --- README  (revision 2395)
 +++ README  (working copy)
 @@ -48,7 +48,13 @@
  Remember to *read* the DBI README file and this one CAREFULLY!
  
  Install enough Oracle software to enable DBD::Oracle to build.
 -For Oracle Instant Client that means install the SDK component.
 +
 +For Oracle Instant Client that means install the following packages:
 +* The Basic package for the essential Oracle libraries.
 +* The SDK package for the headers and makefile.
 +* The SQL*Plus component is optional, but will help DBD::Oracle
 +  determine your Oracle version more easily.
 +
  For full Oracle installs that usually includes Pro*C and SQL*Net.
  (That's not very specific because it varies between Oracle releases.)
 
 --
 Andy Hassall :: [EMAIL PROTECTED] :: http://www.andyh.co.uk
 http://www.andyhsoftware.co.uk/space :: disk and FTP usage analysis tool 
 
  -Original Message-
  From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
  Sent: 11 January 2006 11:23
  To: [EMAIL PROTECTED]
  Subject: [svn:dbd-oracle] r2382 - dbd-oracle/trunk
  
  Author: timbo
  Date: Wed Jan 11 03:23:28 2006
  New Revision: 2382
  
  Modified:
 dbd-oracle/trunk/README
  Log:
  Assorted updates to the README
  
  
  Modified: dbd-oracle/trunk/README
  ==
  
  --- dbd-oracle/trunk/README (original)
  +++ dbd-oracle/trunk/README Wed Jan 11 03:23:28 2006
  @@ -1,7 +1,7 @@
   
   DBD::Oracle  --  an Oracle interface for Perl 5.
   
  -   Copyright (c) 1994-2005  Tim Bunce, Ireland.
  +   Copyright (c) 1994-2006  Tim Bunce, Ireland.
   
  See the COPYRIGHT section in the Oracle.pm file for terms.
   
  @@ -23,7 +23,6 @@ DBD::Oracle  --  an Oracle interface for
  README.sec.txt - Oracle security issues to be aware of
  README.login.txt - Help on how to connect to Oracle
  README.longs.txt - Help on handling LONGs
  -   README.utf8.txt - Help on using UFT8
  README.clients.txt - What Oracle client files you need installed
   
   
  @@ -49,14 +48,17 @@ DBD::Oracle  --  an Oracle interface for
   Remember to *read* the DBI README file and this one CAREFULLY!
   
   Install enough Oracle software to enable DBD::Oracle to build.
  -That usually includes Pro*C and SQL*Net. That's not very specific
  -because it varies so much between Oracle releases.
  +For Oracle Instant Client that means install the SDK component.
  +For full Oracle installs that usually includes Pro*C and SQL*Net.
  +(That's not very specific because it varies between 
  Oracle releases.)
   
  -Except under MS Windows, ORACLE_HOME must point to the 
  Oracle Home
  -used to create DBD::Oracle.  Even under MS Windows, it 
  doesn't hurt.
  +The ORACLE_HOME environment variable must point to the 
  Oracle Home
  +used to create DBD::Oracle. (Not essential under MS Windows).
   
  -Make sure Oracle is working and you can use Oracle commands
  -like sqlplus to talk to the database *from the machine* you
  +MOST IMPORTANTLY:
  +
  +Make sure Oracle is working and you can use the Oracle sqlplus
  +command to talk to the database *from the machine* you
   want to build DBD::Oracle on. (This often involves setting
   environment variables like PATH, LD_LIBRARY_PATH, TWO_TASK etc.)
   
  @@ -71,18 +73,17 @@ on Solaris) and add that to your PATH en
   
   Don't worry about most warnings when make runs, specifically 
  ones like
   end-of-loop code not reached, ANSI C forbids braced-groups within
  -expressions, cast increases required alignment of target type and
  -passing arg 2 of `oerhms' with different width due to prototype.
  +expressions, cast increases required alignment of target type etc.
   
   If you have problems see the 'IF YOU HAVE PROBLEMS' section below.
  -If it builds without error you should then run the tests. For the
  +If it builds without error you should then run 'make test'. For the
   main tests to work they must be able to connect to an Oracle 
  database.
   
   You will need to set either the TWO_TASK or ORACLE_SID environment
   variables to the correct values for your database. Consult Oracle
   documentation for more details. Test your settings by connecting to
   the database using an Oracle tool such as sqlplus. Only once 
  you can do
  -that should you try testing DBD::Oracle.
  +that should you try building and testing DBD::Oracle.
   
   The supplied tests will connect to the database using the 
  value of 

Re: ANNOUNCE: DBD::Oracle 1.17 release candidate

2006-01-12 Thread Tim Bunce
Looking at the logs again it seems the picture isn't too bad...

Note that the NLS_LANG=.AL32UTF8 tests pass. That's the config you ought to use.

See the Unicode section in the DBD::Oracle docs for why Oracle's UTF8
character set is broken and AL32UTF8 should be used instead.

For the NLS_LANG=.WE8ISO8859P15 case you'll see that the unicode tests
are being skipped on non-cygwin platforms, so the real bug is in the
code that checks if the test should be run at all. They shouldn't.

Compare:
http://www.andyh.co.uk/temp/DBD-Oracle/1.17RC1/cygwin_10201xe_test102_WE8ISO8859P15_test.log
http://www.andyh.co.uk/temp/DBD-Oracle/1.17RC1/linux_10201instant_test102_WE8ISO8859P15_test.log

Shouldn't be too hard to track down. If you can do it in a day or
so they I'll get it into 1.17!

Tim.

On Thu, Jan 12, 2006 at 12:48:22AM -, Andy Hassall wrote:
  On Sun, Jan 01, 2006 at 11:39:17PM -, Andy Hassall wrote:
 
  Under Cygwin there are additional Unicode-related failures.
  
  Other will have to scratch that itch.
 
  I'd like to scratch, since I've written a Perl+Oracle tool at the office
 (an Oracle schema documentation tool) that is easier to distribute to other
 departments using Cygwin than ActiveState Perl because it has quite a few
 module dependencies that aren't all up-to-date using ActiveState PPM.
 Although the main one was DBD::Oracle itself, but it seems ActiveState have
 recently started building that again with their version that also bundles
 Oracle Instant Client, so ActiveState might again be a feasible option.
 
  I'd feel more confident with the Cygwin route if DBD::Oracle Unicode
 support was 100% under Cygwin in case anyone enters non-ISO-8859-15 data
 into it (which so far they haven't - but it does use NVARCHAR2 columns just
 in case). However, realistically I don't think I'll have the time to look
 into it for this release, since 1.17 seems pretty close to ready.
 
  This may be something I can try and help with for 1.18.
 
  At the moment I'm not quite sure at which layer to start looking - it's
 apparently something specific to the Cygwin build of Perl, or a lower-level
 library within Cygwin on which its Perl is based, as neither the
 Windows-native nor Linux nor Solaris builds exhibit the problem. The output
 data in all the failing tests is shorter than the expected result, so it
 looks like something along the line is translating the data through a
 character set encoding with a smaller répertoire, such as a single-byte
 encoding, or it's corrupting it by trying to force it to UTF-8 and failing
 in some way - but these are just guesses so far - more investigation is
 clearly needed.
 
 --
 Andy Hassall :: [EMAIL PROTECTED] :: http://www.andyh.co.uk
 http://www.andyhsoftware.co.uk/space :: disk and FTP usage analysis tool 
 


Re: ANNOUNCE: DBI 1.50 release candidate (bug in 10General.t)

2006-01-12 Thread Tim Bunce
On Thu, Jan 12, 2006 at 02:09:26PM +, Charles Jardine wrote:
 Here is a patch which fixes this:
 
 Index: t/10general.t
 ===
 --- t/10general.t   (revision 2334)
 +++ t/10general.t   (working copy)
 @@ -22,8 +22,8 @@
  SKIP: {
 skip not unix-like, 2 unless $Config{d_semctl};
 # basic check that we can fork subprocesses and wait for the status
 -   is system(false), 18, 'system false should return 256';
 -   is system(true), 0, 'system true should return 0';
 +   is system(exit 1;), 18, 'system exit 1; should return 256';
 +   is system(exit 0;),0, 'system exit 0; should return 0';
  }

Thanks, applied (to DBD::Oracle :)

Tim..