[svn:dbd-oracle] r15347 - in dbd-oracle/trunk: . README-files/hpux lib/DBD lib/DBD/Oracle lib/DBD/Oracle/Troubleshooting

[email protected] Wed, 11 Jul 2012 12:25:30 -0700 (PDT)
Newsgroups perl.dbd.oracle.changes
Message-ID <[email protected]>
Author: yanick
Date: Wed Jul 11 12:25:29 2012
New Revision: 15347

Added:
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting.pod
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Aix.pod
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Cygwin.pod
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Hpux.pm
      - copied, changed from r15346, /dbd-oracle/trunk/README.hpux.txt
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Linux.pod
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Macos.pod
      - copied, changed from r15346, /dbd-oracle/trunk/README.macosx.txt
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Sun.pod
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Vms.pod
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Win32.pod
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Win64.pod
      - copied, changed from r15346, /dbd-oracle/trunk/README.win64.txt
Removed:
   dbd-oracle/trunk/README-files/hpux/Makefile-Lincoln
   dbd-oracle/trunk/README.64bit.txt
   dbd-oracle/trunk/README.aix.txt
   dbd-oracle/trunk/README.clients.txt
   dbd-oracle/trunk/README.hpux.txt
   dbd-oracle/trunk/README.java.txt
   dbd-oracle/trunk/README.macosx.txt
   dbd-oracle/trunk/README.sec.txt
   dbd-oracle/trunk/README.win32.txt
   dbd-oracle/trunk/README.win64.txt
   dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting.pm
   dbd-oracle/trunk/test.pl
Modified:
   dbd-oracle/trunk/Changes
   dbd-oracle/trunk/MANIFEST
   dbd-oracle/trunk/META.json
   dbd-oracle/trunk/META.yml
   dbd-oracle/trunk/README
   dbd-oracle/trunk/README.help.txt
   dbd-oracle/trunk/README.mkdn
   dbd-oracle/trunk/lib/DBD/Oracle.pm
   dbd-oracle/trunk/lib/DBD/Oracle/GetInfo.pm
   dbd-oracle/trunk/lib/DBD/Oracle/Object.pm

Log:
POD all the READMEs

Modified: dbd-oracle/trunk/Changes
==============================================================================
--- dbd-oracle/trunk/Changes	(original)
+++ dbd-oracle/trunk/Changes	Wed Jul 11 12:25:29 2012
@@ -13,7 +13,9 @@
     does not seem to have it in 10.2 leading to undefined symbol -
     Martin J. Evans
 
-  [MISCELLANEOUS]
+  [DOCUMENTATION]
+  - Promoted the troubleshooting for the different architectures to 
+    POD documents, for easier/prettier access.
 
   - Added a troubleshooting entry for RT71819 - bound output
     parameters may be returned in the wrong order (Martin J. Evans)

Modified: dbd-oracle/trunk/MANIFEST
==============================================================================
--- dbd-oracle/trunk/MANIFEST	(original)
+++ dbd-oracle/trunk/MANIFEST	Wed Jul 11 12:25:29 2012
@@ -9,18 +9,8 @@
 Oracle.xs
 Oraperl.pm
 README
-README-files/hpux/Makefile-Lincoln
-README.64bit.txt
-README.aix.txt
-README.clients.txt
 README.help.txt
-README.hpux.txt
-README.java.txt
-README.macosx.txt
 README.mkdn
-README.sec.txt
-README.win32.txt
-README.win64.txt
 Todo
 dbdimp.c
 dbdimp.h
@@ -47,7 +37,16 @@
 lib/DBD/Oracle.pm
 lib/DBD/Oracle/GetInfo.pm
 lib/DBD/Oracle/Object.pm
-lib/DBD/Oracle/Troubleshooting.pm
+lib/DBD/Oracle/Troubleshooting.pod
+lib/DBD/Oracle/Troubleshooting/Aix.pod
+lib/DBD/Oracle/Troubleshooting/Cygwin.pod
+lib/DBD/Oracle/Troubleshooting/Hpux.pm
+lib/DBD/Oracle/Troubleshooting/Linux.pod
+lib/DBD/Oracle/Troubleshooting/Macos.pod
+lib/DBD/Oracle/Troubleshooting/Sun.pod
+lib/DBD/Oracle/Troubleshooting/Vms.pod
+lib/DBD/Oracle/Troubleshooting/Win32.pod
+lib/DBD/Oracle/Troubleshooting/Win64.pod
 mkta.pl
 oci.def
 oci8.c
@@ -90,5 +89,4 @@
 t/nchar_test_lib.pl
 t/rt13865.t
 t/rt74753-utf8-encoded.t
-test.pl
 typemap

Modified: dbd-oracle/trunk/META.json
==============================================================================
--- dbd-oracle/trunk/META.json	(original)
+++ dbd-oracle/trunk/META.json	Wed Jul 11 12:25:29 2012
@@ -52,34 +52,30 @@
    "provides" : {
       "DBD::Oracle" : {
          "file" : "lib/DBD/Oracle.pm",
-         "version" : "1.46"
+         "version" : "1.47_00"
       },
       "DBD::Oracle::GetInfo" : {
          "file" : "lib/DBD/Oracle/GetInfo.pm",
-         "version" : "1.46"
+         "version" : "1.47_00"
       },
       "DBD::Oracle::Object" : {
          "file" : "lib/DBD/Oracle/Object.pm",
-         "version" : "1.46"
-      },
-      "DBD::Oracle::Troubleshooting" : {
-         "file" : "lib/DBD/Oracle/Troubleshooting.pm",
-         "version" : "1.46"
+         "version" : "1.47_00"
       },
       "DBD::Oracle::db" : {
          "file" : "lib/DBD/Oracle.pm",
-         "version" : "1.46"
+         "version" : "1.47_00"
       },
       "DBD::Oracle::dr" : {
          "file" : "lib/DBD/Oracle.pm",
-         "version" : "1.46"
+         "version" : "1.47_00"
       },
       "DBD::Oracle::st" : {
          "file" : "lib/DBD/Oracle.pm",
-         "version" : "1.46"
+         "version" : "1.47_00"
       }
    },
-   "release_status" : "stable",
+   "release_status" : "testing",
    "resources" : {
       "bugtracker" : {
          "mailto" : "bug-dbd-oracle at rt.cpan.org",
@@ -92,7 +88,7 @@
          "web" : "http://github.com/yanick/DBD-Oracle/tree"
       }
    },
-   "version" : "1.46",
+   "version" : "1.47_00",
    "x_authority" : "cpan:PYTHIAN",
    "x_help_wanted" : [
       "coder",

Modified: dbd-oracle/trunk/META.yml
==============================================================================
--- dbd-oracle/trunk/META.yml	(original)
+++ dbd-oracle/trunk/META.yml	Wed Jul 11 12:25:29 2012
@@ -30,25 +30,22 @@
 provides:
   DBD::Oracle:
     file: lib/DBD/Oracle.pm
-    version: 1.46
+    version: 1.47_00
   DBD::Oracle::GetInfo:
     file: lib/DBD/Oracle/GetInfo.pm
-    version: 1.46
+    version: 1.47_00
   DBD::Oracle::Object:
     file: lib/DBD/Oracle/Object.pm
-    version: 1.46
-  DBD::Oracle::Troubleshooting:
-    file: lib/DBD/Oracle/Troubleshooting.pm
-    version: 1.46
+    version: 1.47_00
   DBD::Oracle::db:
     file: lib/DBD/Oracle.pm
-    version: 1.46
+    version: 1.47_00
   DBD::Oracle::dr:
     file: lib/DBD/Oracle.pm
-    version: 1.46
+    version: 1.47_00
   DBD::Oracle::st:
     file: lib/DBD/Oracle.pm
-    version: 1.46
+    version: 1.47_00
 requires:
   DBI: 0
   DynaLoader: 0
@@ -60,7 +57,7 @@
   bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=DBD-Oracle
   homepage: http://search.cpan.org/dist/DBD-Oracle/
   repository: git://github.com/yanick/DBD-Oracle.git
-version: 1.46
+version: 1.47_00
 x_authority: cpan:PYTHIAN
 x_help_wanted:
   - coder

Modified: dbd-oracle/trunk/README
==============================================================================
--- dbd-oracle/trunk/README	(original)
+++ dbd-oracle/trunk/README	Wed Jul 11 12:25:29 2012
@@ -2,7 +2,7 @@
     DBD::Oracle - Oracle database driver for the DBI module
 
 VERSION
-    version 1.46
+    version 1.47_00
 
 SYNOPSIS
       use DBI;

Modified: dbd-oracle/trunk/README.help.txt
==============================================================================
--- dbd-oracle/trunk/README.help.txt	(original)
+++ dbd-oracle/trunk/README.help.txt	Wed Jul 11 12:25:29 2012
@@ -7,132 +7,6 @@
 Most of this mess is due to Oracle's fondness for changing the
 build/link process for OCI applications between versions.
 
--------------------------------------------------------------------------------
-Error: 'UV' not in typemap in Oracle.xs, line ...
-
-You're using Perl 5.5.3.  Perl 5.5.3 is very old and and upgrading
-to at least 5.6.1 is recommended.  The DBI itself has required
-perl >= 5.6.0 since DBI 1.38, August 2003.
-
-Meanwhile, edit Oracle.xs and change each UV to an IV, change newSVuv to newSViv,
-cross your fingers, and avoid using longer, bigger, wider than 2GB, or less than zero!
-This is a hacked DBD::Oracle and not recommended for production use.
-
--------------------------------------------------------------------------------
-If you get compiler errors refering to Perl's own header files
-(.../CORE/*.h) then there is something wrong with your installation.
-It is best to use a Perl that was built on the system you are trying to
-use and it's also important to use the same compiler that was used to
-build the Perl you are using.
-
--------------------------------------------------------------------------------
-Assorted runtime problems...
-
-Ensure that the version of Oracle you are talking to is the same one
-you used to build your DBD::Oracle module.
-
-Try building perl with 'usemymalloc' disabled.
-Try building perl with 'threads' enabled (esp for Oracle >= 8.1.6).
-
-Try removing "-lthread" from $ORACLE_HOME/lib/ldflags and/or
-$ORACLE_HOME/lib/sysliblist just for the duration of the DBD::Oracle build
-(but I can't really recommend this approach as it may cause subtle
-problems later)
-
-If you find a memory leak that you can isolate to DBD::Oracle, and you're
-using a perl built with threading enabled, first try rebuilding perl without
-support for threads. Apart from making perl run faster it may also fix the leak.
-Please report memory leaks, with a small self-contained test script,
-to [email protected].
-
--------------------------------------------------------------------------------
-Bad free() warnings:
-
-These are generally caused by problems in Oracle's own library code.
-You can use this code to hide them:
-
-    $SIG{__WARN__} = sub { warn $_[0] unless $_[0] =~ /^Bad free/ }
- 
-If you're using an old perl version (below 5.004) then upgrading will 
-probably fix the warnings (since later versions can disable that warning)
-and is highly recommended anyway. 
- 
-Alternatively you can rebuild Perl without perl's own malloc and/or 
-upgrade Oracle to a more recent version that doesn't have the problem. 
-
--------------------------------------------------------------------------------
-Can't find libclntsh.so:
-
-Dave Moellenhoff <[email protected]>:  libclntsh.so is the shared
-library composed of all the other Oracle libs you used to have to
-statically link.
-libclntsh.so should be in $ORACLE_HOME/lib.  If it's missing, try
-running $ORACLE_HOME/lib/genclntsh.sh and it should create it.
-
-Also: Never copy libclntsh.so to a different machine or Oracle version.
-If DBD::Oracle was built on a machine with a different path to libclntsh.so
-then you'll need to set set an environment variable, typically
-LD_LIBRARY_PATH, to include the directory containing libclntsh.so.
-
-But: LD_LIBRARY_PATH is typically ignored if the script is running set-uid
-(which is common in some httpd/CGI configurations).  In this case
-either rebuild with LD_RUN_PATH set to include the path to libclntsh
-or create a symbolic link so that libclntsh is available via the same
-path as it was when the module was built. (On Solaris the command
-"ldd -s Oracle.so" can be used to see how the linker is searching for it.)
-
-
--------------------------------------------------------------------------------
-Error while trying to retrieve text for error ...:
-
-From Lou Henefeld <[email protected]>: We discovered that we needed
-some files from the $ORACLE_HOME/ocommon/nls/admin/data directory:
-    lx00001.nlb, lx10001.nlb, lx1boot.nlb, lx20001.nlb
-If your national language is different from ours (American English), 
-you will probably need different nls data files.
-
-
--------------------------------------------------------------------------------
-ORA-01019: unable to allocate memory in the user side
-
-From Ethan Tuttle <[email protected]>: My experience: ORA-01019 errors
-occur when using Oracle 7.3.x shared libraries on a machine that
-doesn't have all necessary Oracle files in $ORACLE_HOME.
-
-It used to be with 7.2 libraries that all one needed was the tnsnames.ora
-file for a DBD-Oracle client to connect.  Not so with 7.3.x.  I'm not sure
-exactly which additional files are needed on the client machine.
-
-Furthermore, from what I can tell, the path to ORACLE_HOME is resolved and
-compiled into either libclntsh.so or the DBD-Oracle.  Thus, copying a
-minimal ORACLE_HOME onto a client machine won't work unless the path to
-ORACLE_HOME is the same on the client machine as it is on the machine
-where DBD-Oracle was compiled.
-
-ORA-01019 can also be caused by corrupt Oracle config files such as
-/etc/oratab.
-
-ORA-01019 can also be caused by using a different version of the
-message catalogs ($ORACLE_HOME/ocommon/nls/admin/data) to that used
-when DBD::Oracle was compiled.
-
-Also try building with oracle.mk if your DBD::Oracle defaulted to proc.mk.
-
--------------------------------------------------------------------------------
-SCO - For general help enabling dynamic loding under SCO 5
-
-	http://www2.arkansas.net/~jcoy/perl5/
-
--------------------------------------------------------------------------------
-AIX - warnings like these when building perl are not usually a problem:
-
-ld: 0711-415 WARNING: Symbol Perl_sighandler is already exported.
-ld: 0711-319 WARNING: Exported symbol not defined: Perl_abs_amg
-
-When building on AIX check to make sure that all of bos.adt (13 pieces)
-and all of bos.compat (11 pieces) are installed.
-
-Thanks to Mike Moran <[email protected]> for this information.
 
 -------------------------------------------------------------------------------
 AIX 4 - core dump on login and similar problems
@@ -376,13 +250,6 @@
 	perl Makefile.PL -n LIBCLNTSH
 let me know if any of these help.
 
--------------------------------------------------------------------------------
-Some runtime problems might be related to perl's malloc.
-
-This is a long shot. If all else fails and perl -V:usemymalloc says
-usemymalloc='y' then try rebuilding perl using Configure -Uusemymalloc.
-If this does fix it for you then please let me know.
-
 ===============================================================================
 Hang during "repetitive connect/open/close/disconnect" test:
 

Modified: dbd-oracle/trunk/README.mkdn
==============================================================================
--- dbd-oracle/trunk/README.mkdn	(original)
+++ dbd-oracle/trunk/README.mkdn	Wed Jul 11 12:25:29 2012
@@ -4,7 +4,7 @@
 
 # VERSION
 
-version 1.46
+version 1.47_00
 
 # SYNOPSIS
 

Modified: dbd-oracle/trunk/lib/DBD/Oracle.pm
==============================================================================
--- dbd-oracle/trunk/lib/DBD/Oracle.pm	(original)
+++ dbd-oracle/trunk/lib/DBD/Oracle.pm	Wed Jul 11 12:25:29 2012
@@ -12,7 +12,7 @@
 {
 package DBD::Oracle;
 {
-  $DBD::Oracle::VERSION = '1.46';
+  $DBD::Oracle::VERSION = '1.47_00';
 }
 BEGIN {
   $DBD::Oracle::AUTHORITY = 'cpan:PYTHIAN';
@@ -125,7 +125,7 @@
 
 {   package DBD::Oracle::dr;
 {
-  $DBD::Oracle::dr::VERSION = '1.46';
+  $DBD::Oracle::dr::VERSION = '1.47_00';
 }
 BEGIN {
   $DBD::Oracle::dr::AUTHORITY = 'cpan:PYTHIAN';
@@ -330,7 +330,7 @@
 
 {   package DBD::Oracle::db;
 {
-  $DBD::Oracle::db::VERSION = '1.46';
+  $DBD::Oracle::db::VERSION = '1.47_00';
 }
 BEGIN {
   $DBD::Oracle::db::AUTHORITY = 'cpan:PYTHIAN';
@@ -1059,7 +1059,7 @@
 
 {   package DBD::Oracle::st;
 {
-  $DBD::Oracle::st::VERSION = '1.46';
+  $DBD::Oracle::st::VERSION = '1.47_00';
 }
 BEGIN {
   $DBD::Oracle::st::AUTHORITY = 'cpan:PYTHIAN';
@@ -1164,7 +1164,7 @@
 
 =head1 VERSION
 
-version 1.46
+version 1.47_00
 
 =head1 SYNOPSIS
 

Modified: dbd-oracle/trunk/lib/DBD/Oracle/GetInfo.pm
==============================================================================
--- dbd-oracle/trunk/lib/DBD/Oracle/GetInfo.pm	(original)
+++ dbd-oracle/trunk/lib/DBD/Oracle/GetInfo.pm	Wed Jul 11 12:25:29 2012
@@ -1,6 +1,6 @@
 package DBD::Oracle::GetInfo;
 {
-  $DBD::Oracle::GetInfo::VERSION = '1.46';
+  $DBD::Oracle::GetInfo::VERSION = '1.47_00';
 }
 BEGIN {
   $DBD::Oracle::GetInfo::AUTHORITY = 'cpan:PYTHIAN';
@@ -295,7 +295,7 @@
 
 =head1 VERSION
 
-version 1.46
+version 1.47_00
 
 =head1 AUTHORS
 

Modified: dbd-oracle/trunk/lib/DBD/Oracle/Object.pm
==============================================================================
--- dbd-oracle/trunk/lib/DBD/Oracle/Object.pm	(original)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Object.pm	Wed Jul 11 12:25:29 2012
@@ -1,6 +1,6 @@
 package DBD::Oracle::Object;
 {
-  $DBD::Oracle::Object::VERSION = '1.46';
+  $DBD::Oracle::Object::VERSION = '1.47_00';
 }
 BEGIN {
   $DBD::Oracle::Object::AUTHORITY = 'cpan:PYTHIAN';
@@ -39,7 +39,7 @@
 
 =head1 VERSION
 
-version 1.46
+version 1.47_00
 
 =head1 AUTHORS
 

Added: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting.pod
==============================================================================
--- (empty file)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting.pod	Wed Jul 11 12:25:29 2012
@@ -0,0 +1,167 @@
+#PODNAME: DBD::Oracle::Troubleshooting 
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting  - Tips and Hints to Troubleshoot DBD::Oracle
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 CONNECTING TO ORACLE
+
+If you are reading this it is assumed that you have successfully
+installed DBD::Oracle and you are having some problems connecting to
+Oracle.
+
+First off you will have to tell DBD::Oracle where the binaries reside
+for the Oracle client it was compiled against.  This is the case when
+you encounter a
+
+ DBI connect('','system',...) failed: ERROR OCIEnvNlsCreate.
+
+error in Linux or in Windows when you get
+
+  OCI.DLL not found
+
+The solution to this problem in the case of Linux is to ensure your
+'ORACLE_HOME' (or LD_LIBRARY_PATH for InstantClient) environment
+variable points to the correct directory.
+
+  export ORACLE_HOME=/app/oracle/product/xx.x.x
+
+For Windows the solution is to add this value to you PATH
+
+  PATH=c:\app\oracle\product\xx.x.x;%PATH%
+
+If you get past this stage and get a
+
+  ORA-12154: TNS:could not resolve the connect identifier specified
+
+error then the most likely cause is DBD::ORACLE cannot find your .ORA
+(F<TNSNAMES.ORA>, F<LISTENER.ORA>, F<SQLNET.ORA>) files. This can be
+solved by setting the TNS_ADMIN environment variable to the directory
+where these files can be found.
+
+If you get to this stage and you have either one of the following
+errors;
+
+  ORA-12560: TNS:protocol adapter error
+  ORA-12162: TNS:net service name is incorrectly specified
+
+usually means that DBD::Oracle can find the listener but the it cannot connect to the DB because the listener cannot find the DB you asked for.
+
+=head2 Oracle utilities
+
+If you are still having problems connecting then the Oracle adapters
+utility may offer some help. Run these two commands:
+
+  $ORACLE_HOME/bin/adapters
+  $ORACLE_HOME/bin/adapters $ORACLE_HOME/bin/sqlplus
+
+and check the output. The "Protocol Adapters" should include at least "IPC Protocol Adapter" and "TCP/IP
+Protocol Adapter".
+
+If it generates any errors which look relevant then please talk to your
+Oracle technical support (and not the dbi-users mailing list).
+
+=head2 Connecting using a bequeather
+
+If you are using a bequeather to connect to a server
+on the same host as the client, you might have 
+to add 
+
+    bequeath_detach = yes
+
+to your sqlnet.ora file or you won't be able to safely use fork/system
+functions in Perl.
+
+See the discussion at
+L<http://www.nntp.perl.org/group/perl.dbi.dev/2012/02/msg6837.html>
+and L<http://www.nntp.perl.org/group/perl.dbi.users/2009/06/msg34023.html>
+for more gory details.
+
+=head1 USING THE LONG TYPES
+
+Some examples related to the use of LONG types are available in
+the C<examples/> directory of the distribution.
+
+=head1 Can't find I<libclntsh.so>
+
+I<libclntsh.so> is the shared
+library composed of all the other Oracle libs you used to have to
+statically link.
+libclntsh.so should be in I<$ORACLE_HOME/lib>.  If it's missing, try
+running I<$ORACLE_HOME/lib/genclntsh.sh> and it should create it.
+
+Never copy I<libclntsh.so> to a different machine or Oracle version.
+If DBD::Oracle was built on a machine with a different path to I<libclntsh.so>
+then you'll need to set set an environment variable, typically
+I<LD_LIBRARY_PATH>, to include the directory containing I<libclntsh.so>.
+
+I<LD_LIBRARY_PATH> is typically ignored if the script is running set-uid
+(which is common in some httpd/CGI configurations).  In this case
+either rebuild with I<LD_RUN_PATH> set to include the path to I<libclntsh>
+or create a symbolic link so that I<libclntsh> is available via the same
+path as it was when the module was built. (On Solaris the command
+"ldd -s Oracle.so" can be used to see how the linker is searching for it.)
+
+=head1 Miscellaneous
+
+=head2 Crash with an open connection and Module::Runtime in mod_perl2
+
+See RT 72989 (https://rt.cpan.org/Ticket/Display.html?id=72989)
+
+Apache2 MPM Prefork with mod_perl2 will crash if Module::Runtime is
+loaded, and an Oracle connection is opened through PerlRequire (before
+forking).
+
+It looks like this was fixed in 0.012 of Module::Runtime.
+
+=head2 bin_param_inout swapping return values
+
+See RT 71819 (https://rt.cpan.org/Ticket/Display.html?id=71819)
+
+It seems that in some older versions of Oracle Instant Client
+(certainly 10.2.0.4.0) when output parameters are bound with lengths
+greater than 3584 the output parameters can be returned in the wrong
+placeholders.
+
+It is reported fixed in Instant Client 11.2.0.2.0.
+
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+

Added: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Aix.pod
==============================================================================
--- (empty file)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Aix.pod	Wed Jul 11 12:25:29 2012
@@ -0,0 +1,290 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Aix
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on AIX
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Aix - Tips and Hints to Troubleshoot DBD::Oracle on AIX
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 Using Visual Age 7 C Compiler 
+
+Oracle 9i is only certified as a 64-bit application on AIX 5L (5.1,5.2,5.3) with 32-bit support;
+in other words, there is no 9i "32-bit" Oracle client
+
+Oracle 10g is certified as both a 64-bit application and a 32-bit Oracle client
+
+This information only pertains to deploying:
+
+	the DBI (version 1.48)
+	and DBD-Oracle (version 1.16):
+        on AIX 5.3
+        using Oracle 9i (9.2.0.1/9.2.0.5)
+        using the existing Perl 5.8.2 (no custom-built Perl) which is 32-bit
+        using Visual Age 7.0 C/C++ compiler
+
+Install the DBI (required for the DBD-Oracle install - no issues here)
+Untar the DBD-Oracle bundle
+Run Makefile.PL
+
+    $ perl Makefile.PL
+
+Edit Makefile with following commands:
+
+    1,$s?/lib/ ?/lib32/ ?g
+    1,$s?-q64??g
+    1,$s?/lib/sysliblist?/lib32/sysliblist?g
+
+Now perform normal commands to perform the testing/making:
+
+    $ make
+    $ make test
+    $ make install
+
+I've tested the basics of the DBD-Oracle and it seems fully functional.
+
+Stephen de Vries
+
+=head1 Using gcc C Compiler 
+
+    DBD::Oracle with gcc and Oracle Instant Client on AIX
+    --------------------------------------------------------------------------------------	
+    Nathan Vonnahme     Dec 15 2005, 4:28 pm   Newsgroups: perl.dbi.users
+    See:  http://groups.google.com/group/perl.dbi.users/msg/0bd9097f80f2c8a9
+    [ with updates 1/31/2006 - DBD::Oracle 1.17 doesn't need makefile hacking 
+    to work with instantclient on AIX ]
+
+
+    Yes!  It eluded me last year but I finally got DBD::Oracle working on an
+    AIX machine using gcc.  Here's the short version:
+
+    First I had to recompile perl with gcc, using
+            sh Configure -de -Dcc=gcc
+    This apparently built a 32 bit perl, someday I will try getting it to go
+    64 bit.
+
+    I was then able to install and build DBI 1.50 with the CPAN shell.
+
+    I downloaded the base and sdk packages of the Oracle Instant Client for
+    AIX -- first I tried the 64 bit but that didn't work with my 32 bit perl
+    -- the 32 bit version (still at 10.1.0.3) did the trick.  I unzipped
+    them and moved the dir to /usr/local/oracle/instantclient10_1 and made a
+    symlink without the version at /usr/local/oracle/instantclient , then
+    set:
+
+    export ORACLE_HOME=/usr/local/oracle/instantclient
+    export LIBPATH=$ORACLE_HOME
+
+
+
+    Oracle wasn't providing the sqlplus package for 32 bit AIX so I
+    explicitly told Makefile.PL the version:
+
+    perl Makefile.PL -V 10.1 
+
+    make
+
+    My test databases were on other machines so I set these environment variables 
+    to get the tests to run:
+
+    export ORACLE_DSN=DBI:Oracle://host/dbinstance
+    export ORACLE_USERID="user/password"
+
+    make test
+    make install
+
+
+    NOTE:  I have an older full version of Oracle on this machine, and the 
+    ORACLE_HOME environment variable is normally set to point to that, so 
+    my perl scripts that use DBD::Oracle have to make sure to first set
+    $ENV{ORACLE_HOME}='/usr/local/oracle/instantclient';
+    
+
+
+
+
+    --------------------------------------------------------------------------------------
+    The following setup worked to build on AIX 5.2:
+    gcc-3.3.2 (32-bit) (configure opts [ --with-ld=/usr/ccs/bin/ld --with-as=/usr/ccs/bin/as])
+    Oracle-9.2.0 ( full install w/32bit support)
+    perl-5.8.3 (built with above gcc/latest stable as of March 2004)
+    Followed the directions from Rafael's email below, only set ORACLE_HOME, (and
+    the appropriate test environmentals).
+    1) build perl-5.8.3 with gcc
+    2) install DBI
+    3) ORACLE_HOME="your oracle home"
+    ORACLE_USERID..
+    ORACLE_SID ..
+    (I ignored ORACCENV, didn't use it.)
+    4) install DBD::Oracle, after perl Makefile.PL, edit the created Makefile,
+    changing references to Oracle's ../lib to ../lib32. and change crt0_64.o to
+    crt0_r.o. Remove the -q32 and/or -q64 options from the list of libraries to
+    link with.
+    5) make should be clean, make test should pass.
+    This setup worked with 8.1.7 w/32 bit support, and with 9.2.0 w/ 32-bit support.
+    --Adrian Terranova
+
+=head1 Using xlc_r C Compiler 
+
+    From: Rafael Caceres 
+    Date: 22 Jul 2003 10:05:20 -0500
+
+    The following sequence worked for me on AIX 5.1:
+
+    -use Perl 5.8.0 (the latest stable from CPAN)
+
+    -use the xlc_r version of IBM's compiler and build a 32 bit Perl
+    (which xlc_r will do by default). All tests should be successful.
+
+    -get and install DBI 
+
+    -get DBD::Oracle. Edit the Makefile.PL or Makefile for DBD::Oracle,
+    changing references to Oracle's ../lib to ../lib32. and change crt0_64.o
+    to crt0_r.o. Remove the -q32 and/or -q64 options from the list of
+    libraries to link with. Do the make and make test. 
+
+    -Set up the environment for making DBD::Oracle:
+        ORACLE_HOME="your oracle home"
+        ORACCENV = "xlc_r"
+        ORACLE_USERID..
+        ORACLE_SID ..
+
+    -Run make, all tests should be successfull -against Oracle 9.x at least.
+
+    You should have no problems with Oracle 8.1.7, but accessing Oracle 7.x
+    or previous is not possible (you'll core dump, or simply hang). The same
+    goes for a Linux build or a Digital build, regarding access of different
+    Oracle versions.
+
+    Rafael Caceres
+
+    > I dont believe I compiled Oracle.  During the installation it was linked
+    > but I am not sure it was compiled
+    > 
+    > I used a xlc compiler to compile PERL.
+    > Got this message in the Perl Makefile.PL output
+    > 
+    > Warning: You will may need to rebuild perl using the xlc_r compiler.
+    >          You may also need do: ORACCENV='cc=xlc_r'; export ORACCENV
+    >          Also see the README about the -p option
+    > 
+    > this probobly means I need to rebuild PERL with xlc_r??
+    > 
+    > thanx
+    > 
+    > Mike Paladino
+    > Database Administrator
+
+
+    From: Rafael Caceres                                                                                  
+    > 
+    > Make sure you use the same compiler to build Oracle and Perl. We have
+    > used xlc_r on Aix 5.1 with no problems. Your Perl build is 32 bit, so
+    > when building DBD::Oracle, you should use the 32bit libraries (change
+    > references to .../oracle/lib to .../oracle/lib32 in your Makefile).
+    > Remove the references to the -q64 or -q32 parameters for ld in Makefile,
+    > as they shouldn't be there.
+    > 
+    > Rafael Caceres
+
+
+    From: "cartman ltd" 
+    Subject: Tip for DBI and DBD::Oracle on AIX 5.1 and Oracle 9.2
+    Date: Mon, 11 Aug 2003 18:15:38 +0000
+    Message-ID: <[email protected]>
+
+    Here is a tip for compiling DBD::Oracle as a 32 bit application on AIX 5.1 
+    64 bit and Oracle 9.2 64 bit without editting any makefiles. I hope people 
+    find this useful:
+
+    First, the versions of products I used:
+    DBI version 1.32
+    DBD::Oracle version 1.14
+    Oracle 9.2.0.2 - default 64 bit application with 32 bit libraries
+    AIX 5.1 ML03 - 64 bit kernel - ships with Perl as a 32 bit application.
+    VisualAge C/C++ 5.0.2
+
+    Basically DBD must be compiled as 32 bit to link with Perl's 32 bit 
+    libraries.
+    gunzip -c DBD-Oracle-1.14.tar.gz | tar xvf 
+    cd DBD-Oracle-1.14
+    perl Makefile.PL -m $ORACLE_HOME/rdbms/demo/demo_rdbms32.mk
+    make
+
+    NB: I think there is a bug in the Oracle 9.2.0.3 file 
+    $ORACLE_HOME/rdbms/lib/env_rdbms.mk
+    I corrected this (before running the above commands) by replacing the 
+    invalid linker option
+    LDFLAGS32=-q32
+    with
+    LDFLAGS32=-b32
+
+    Have fun: KC.
+    --------------------------------------------------------------------------------------
+
+    Date: Wed, 30 Jun 2004 23:34:24 -0500
+    From: "SCHULTZ, DARYLE (SBCSI)" 
+
+    Got it to work.  Using dbd 1.16
+
+    Perl 5.8.4 built like this, with Visual Age 6.0:
+
+    config_args='-Dcc=xlc_r -Dusenm -Dprefix=/appl/datasync/work/perl5
+    -Dusethreads -Duse64bitall -des'
+    ==============================================
+
+    Used DBI 1.42
+    =============================================
+    Added this to top of Oracle.h:
+    #define A_OSF
+
+    #include <oratypes.h>
+    =======================
+    Set LIBPATH to point to 64bit Oracle libs first.
+    export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:/usr/lib
+
+    Use:   perl Makefile.PL -nob
+
+    Change all references in Makefile  of LD_RUN_PATH to be LIBPATH.
+    Change nothing else, left all flags in Makefile, including -q64.
+    Passed make, and all tests.
+
+    --------------------------------------------------------------------------------------
+
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+

Added: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Cygwin.pod
==============================================================================
--- (empty file)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Cygwin.pod	Wed Jul 11 12:25:29 2012
@@ -0,0 +1,111 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Cygwin
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on Cygwin
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Cygwin - Tips and Hints to Troubleshoot DBD::Oracle on Cygwin
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 General Info
+
+Makefile.PL should find and make use of OCI include
+files, but you have to build an import library for
+OCI.DLL and put it somewhere in library search path.
+one of the possible ways to do this is issuing command
+
+    dlltool --input-def oci.def --output-lib liboci.a
+
+in the directory where you unpacked DBD::Oracle distribution
+archive.  this will create import library for Oracle 8.0.4.
+
+Note: make clean removes '*.a' files, so put a copy in a safe place.
+
+=head1 Compiling DBD::Oracle using the Oracle Instant Client, Cygwin Perl and gcc
+
+=over
+
+=item 1
+
+Download these two packages from Oracle's Instant Client for
+Windows site
+(http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html):
+
+Instant Client Package - Basic: All files required to run OCI,
+OCCI, and JDBC-OCI applications
+
+Instant Client Package - SDK: Additional header files and an
+example makefile for developing Oracle applications with Instant Client
+
+(I usually just use the latest version of the client)
+
+=item 2
+
+Unpack both into C:\oracle\instantclient_11_1
+
+=item 3
+
+Download and unpack DBD::Oracle from CPAN to some place with no
+spaces in the path (I used /tmp/DBD-Oracle) and cd to it.
+
+=item 4
+
+Set up some environment variables (it didn't work until I got the
+DSN right):
+
+      ORACLE_DSN=DBI:Oracle:host=oraclehost;sid=oracledb1
+      ORACLE_USERID=username/password
+
+=item 5
+
+      perl Makefile.PL
+      make
+      make test
+      make install
+
+=back
+
+Note, the TNS Names stuff doesn't always seem to work with the instant
+client so Perl scripts need to explicitly use host/sid in the DSN, like
+this:
+
+    my $dbh = DBI->connect('dbi:Oracle:host=oraclehost;sid=oracledb1',
+    'username', 'password');
+
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+

Copied: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Hpux.pm (from r15346, /dbd-oracle/trunk/README.hpux.txt)
==============================================================================
--- /dbd-oracle/trunk/README.hpux.txt	(original)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Hpux.pm	Wed Jul 11 12:25:29 2012
@@ -1,3 +1,18 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Hpux
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on HP-UX
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Hpux - Tips and Hints to Troubleshoot DBD::Oracle on HP-UX
+
+=head1 VERSION
+
+version 1.47_00
+
 =head1 INTRODUCTION
 
 Building a working dynamically linked version of the Oracle DBD driver
@@ -23,7 +38,7 @@
 For HPUX 11 on Itanium see also
 http://www.nntp.perl.org/group/perl.dbi.users/23840
 
-=head1  First things First:  Introduction
+=head1 First things First:  Introduction
 
 The reason you are even reading this file is because you want to connect
 to an Oracle database from your perl program using the DBD::Oracle DBI
@@ -59,8 +74,7 @@
 
    -- Lincoln
 
-
-=head1  Build your own Perl
+=head1 Build your own Perl
 
 HP's default Perl is no good (and antique).
 
@@ -330,9 +344,9 @@
 hints of what might be wrong... and send me a note, describing your
 configuration, and what you did to fix it.
 
-=head1	Trouble Shooting
+=head1 Trouble Shooting
 
-=head2	"Unresolved symbol"
+=head2 "Unresolved symbol"
 
 In general, find the symbols, edit the Makefile, and make test.
 
@@ -413,7 +427,7 @@
 Perform a make test, if symbols are still unresolved repeat the editing
 of the Makefile and make test again.
 
-=head1  DBD-Oracle-1.06
+=head1 DBD-Oracle-1.06
 
 You are strongly urged to upgrade. However here is what you may need to
 know to get it or work, if you insist on using an earlier version.
@@ -955,14 +969,14 @@
    $ORACLE_HOME/rdbms/admin/shrept.lst
 
 =itme 3 Add the following line: 
-   
+
    rdbms:OCILobLocatorAssign
 
 =item 4 (optional) Add the names of any other missing functions needed by applications, other than WebLogic Server 7.0, that you want to execute. 
 Note: The OCILobLocatorAssign function is not the only missing function that WebLogic Server 7.0 should be able to call, but it is the only missing function that WebLogic Server 7.0 requires. Other functions that WebLogic Server should be able to call, such as OCIEnvCreate and OCIerminate, are also missing. If these functions are required by other applications that you plan to run, you must add them to your environment by specifying them, too, in $ORACLE_HOME/rdbms/admin/shrept.lst.
 
 =item 5 Rebuild the shared client library: 
-   
+
    $ cd $ORACLE_HOME/rdbms/lib 
    $ make -f ins_rdbms.mk client_sharedlib 
 
@@ -980,4 +994,34 @@
 
 =back
 
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
 =cut
+

Added: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Linux.pod
==============================================================================
--- (empty file)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Linux.pod	Wed Jul 11 12:25:29 2012
@@ -0,0 +1,149 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Linux
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on Linux
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Linux - Tips and Hints to Troubleshoot DBD::Oracle on Linux
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 Installing with Instantclient .rpm files.
+
+Nothing special with this you just have to set up you permissions as follows;
+
+1) Have permission for RWE on '/usr/lib/oracle/10.2.0.3/client/' or the other directory where you RPMed to
+
+2) Set export ORACLE_HOME=/usr/lib/oracle/10.2.0.3/client
+
+3) Set export LD_LIBRARY_PATH=$ORACLE_HOME/lib
+
+4) If you plan to use tnsnames to connect to remote servers and your tnsnames.ora file is not in $ORACLE_HOME/network/admin, you will need to Export TNS_ADMIN=dir to point DBD::Oracle to where your tnsnames.ora file is
+
+=head1 undefined symbol: __cmpdi2 comes up when Oracle isn't properly linked to the libgcc.a library.
+
+In version 8, this was correctd by changing the SYSLIBS entry in
+$ORACLE_HOME/bin/genclntsh to include
+"-L/usr/lib/gcc-lib/i386-redhat-linux/3.2 -lgcc".
+
+I had tried this with no success as when this program was then run, the
+error "unable to find libgcc" was generated.  Of course, this was the
+library I was trying to describe!
+
+It turns out that now it is necessary to edit the same file and append
+"`gcc -print-libgcc-file-name`" (including the backquotes!).  If you do
+this and then run "genclntsh", the libclntsh is properly generated and
+the linkage with DBD::Oracle proceeds properly.
+
+=head1 cc1: invalid option `tune=pentium4'" error
+
+If you get the above it seems that eiter your Perl or OS where compiled with a different version of GCC or the GCC that is on your system is very old.
+
+No real problem with the above however you will have to
+
+1) run Perl Makefile.PL
+
+2) edit the Makefile and remove the offending '-mtune=pentium4' text
+
+3) save and exit
+
+4) do the make install and it should work fine for you
+
+=head1 Oracle 9i Lite 
+
+The advice is to use the regular Oracle9i not the lite version. 
+
+Another great source of help was: http://www.puschitz.com/InstallingOracle9i.html
+
+just getting 9i and 9i lite installed.  I use fvwm2(nvidia X driver) as
+a window manager which does not work with the 9i install program, works
+fine with the default Gnomish(nv X driver), it could have been the X
+driver too.
+
+With Redhat9 it is REAL important to set LD_ASSUME_KERNEL to 2.4.1.
+
+I didn't try this but it may be possible to install what is needed by
+only downloading the first disk saving some 1.3GB of download fun.
+
+I installed a custom install from the client group.  The packages I
+installed are the Programmers section and sqlplus.  I noticed that the
+Pro*C when on as a result of the checking the Programmers section I
+assume.
+
+Once Oracle was installed properly the DBD::Oracle install went as
+smooth as just about every other CPAN module.
+
+=head1 Oracle 10g Instantclient
+
+The Makefile.PL will now work for  Oracle 10g Instantclient. To have both the Compile and
+the test.pl to work you must first have the LD_LIBRARY_PATH correctly set to your 
+"instantclient" directory. (http://www.oracle.com/technology/tech/oci/instantclient/instantclient.html) 
+
+The present version of the make creates a link on your "instantclient" directory as follows
+"ln -s libclntsh.so.10.1 libclntsh.so". It is needed for both the makefile creation and the compile 
+but is not need for the test.pl. It should be removed after the compile.
+
+If the Makefile.PL or make fails try creating this link directly in your "instantclient" directory.
+
+=head1 Oracle Database 10g Express Edition  10.2
+
+To get 10Xe to compile correctly I had to add $ORACLE_HOME/lib to the LD_LIBRARY_PATH 
+as you would for an install against 10g Standard Edition, Standard Edition One, or 
+Enterprise Edition 
+
+=head1 UTF8 bug in Oracle  9.2.0.5.0 and 9.2.0.7.0
+
+DBD::Oracle seems to hit some sort of bug with the above two versions of DB.
+The bug seems to hit when you when the Oracle database charset: US7ASCII and the Oracle nchar charset: AL16UTF16 and it has also
+been reported when the Oracle database charset: WE8ISO8850P1 Oracle nchar charset: AL32UTF16.  
+
+So far there is no patch for this but here are some work arounds 
+
+    use DBD::Oracle qw( SQLCS_IMPLICIT SQLCS_NCHAR );
+    ...
+    $sth->bind_param(1, $value, { ora_csform => SQLCS_NCHAR });
+
+    or this way
+
+    $dbh->{ora_ph_csform} = SQLCS_NCHAR; # default for all future placeholders
+
+    or this way
+
+    utf8::downgrade($parameter, 1);
+
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+

Copied: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Macos.pod (from r15346, /dbd-oracle/trunk/README.macosx.txt)
==============================================================================
--- /dbd-oracle/trunk/README.macosx.txt	(original)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Macos.pod	Wed Jul 11 12:25:29 2012
@@ -1,3 +1,20 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Macos
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on MacOs
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Macos - Tips and Hints to Troubleshoot DBD::Oracle on MacOs
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 General Info 
+
 These instructions allow for the compilation and successful testing of
 DBD::Oracle on MacOS X 10.2.4 and higher, using Oracle 9iR2 DR
 (Release 9.2.0.1.0) or the 10g Instant Client release (10.1.0.3 at the
@@ -47,8 +64,7 @@
 database server on your MacOSX box. See below (Instructions for
 10.3.x) for details.
 
-======================================================================
-Instructions for 10.7.x (Lion)
+=head1 Instructions for 10.7.x (Lion)
 
 Because the 64 bit instantclient (version 10gr2)is currently
 [incompatible with Lion][], DBD::Oracle can only be compiled with the
@@ -62,9 +78,9 @@
 If you have a 32-bit Perl, however, then the following steps should work:
 
 * Download and install the 32-bit basic, sqlplus, and sdk instantclient
-  libraries and install them in a central location, such as
-  `/usr/oracle_instantclient`. [Downloads here][].
-  
+libraries and install them in a central location, such as
+`/usr/oracle_instantclient`. [Downloads here][].
+
   [Downloads here]: http://www.oracle.com/technetwork/topics/intel-macsoft-096467.html
 
 * Create a symlink from `libclntsh.dylib.10.1` to `libclntsh.dylib`:
@@ -81,8 +97,7 @@
 
      cpan DBD::Oracle
 
-======================================================================
-Instructions for 10.6.x (Snow Leopard)
+=head1 Instructions for 10.6.x (Snow Leopard)
 
 These are taken from a stackoverflow answer by "nickisfat" who gave
 his/her permission for its inclusion here. You can see the original
@@ -170,9 +185,7 @@
 
 Now you're all set - enjoy your perly oracley new life
 
-
-======================================================================
-Instructions for 10.2.x (Jaguar)
+=head1 Instructions for 10.2.x (Jaguar)
 
 1) Install Oracle exactly per Oracle documentation. If you change
 install locations, then you'll need to modify paths accordingly.
@@ -227,102 +240,102 @@
       compile with Perl 5.6.0; they may not be necessary with other
       versions of IO and Perl, respectively.
 
-+=+=+=+=+=+=+= Cut after this line
-diff -c ../IO-orig/IO-1.20/IO.xs ./IO.xs
-*** ../IO-orig/IO-1.20/IO.xs	Mon Jul 13 23:36:24 1998
---- ./IO.xs	Sat May 10 15:20:02 2003
-***************
-*** 205,211 ****
-  	    ST(0) = sv_2mortal(newSVpv((char*)&pos, sizeof(Fpos_t)));
-  	}
-  	else {
-! 	    ST(0) = &sv_undef;
-  	    errno = EINVAL;
-  	}
-
---- 205,211 ----
-  	    ST(0) = sv_2mortal(newSVpv((char*)&pos, sizeof(Fpos_t)));
-  	}
-  	else {
-! 	    ST(0) = &PL_sv_undef;
-  	    errno = EINVAL;
-  	}
-
-***************
-*** 249,255 ****
-  	    SvREFCNT_dec(gv);   /* undo increment in newRV() */
-  	}
-  	else {
-! 	    ST(0) = &sv_undef;
-  	    SvREFCNT_dec(gv);
-  	}
-
---- 249,255 ----
-  	    SvREFCNT_dec(gv);   /* undo increment in newRV() */
-  	}
-  	else {
-! 	    ST(0) = &PL_sv_undef;
-  	    SvREFCNT_dec(gv);
-  	}
-
-***************
-*** 272,278 ****
-  	i++;
-  	fds[j].revents = 0;
-      }
-!     if((ret = poll(fds,nfd,timeout)) >= 0) {
-  	for(i=1, j=0 ; j < nfd ; j++) {
-  	    sv_setiv(ST(i), fds[j].fd); i++;
-  	    sv_setiv(ST(i), fds[j].revents); i++;
---- 272,278 ----
-  	i++;
-  	fds[j].revents = 0;
-      }
-!     if((ret = io_poll(fds,nfd,timeout)) >= 0) {
-  	for(i=1, j=0 ; j < nfd ; j++) {
-  	    sv_setiv(ST(i), fds[j].fd); i++;
-  	    sv_setiv(ST(i), fds[j].revents); i++;
-diff -c ../IO-orig/IO-1.20/poll.c ./poll.c
-*** ../IO-orig/IO-1.20/poll.c	Wed Mar 18 21:34:00 1998
---- ./poll.c	Sat May 10 14:28:22 2003
-***************
-*** 35,41 ****
-  # define POLL_EVENTS_MASK (POLL_CAN_READ | POLL_CAN_WRITE | POLL_HAS_EXCP)
-
-  int
-! poll(fds, nfds, timeout)
-  struct pollfd *fds;
-  unsigned long nfds;
-  int timeout;
---- 35,41 ----
-  # define POLL_EVENTS_MASK (POLL_CAN_READ | POLL_CAN_WRITE | POLL_HAS_EXCP)
-
-  int
-! io_poll(fds, nfds, timeout)
-  struct pollfd *fds;
-  unsigned long nfds;
-  int timeout;
-diff -c ../IO-orig/IO-1.20/poll.h ./poll.h
-*** ../IO-orig/IO-1.20/poll.h	Wed Apr 15 20:33:02 1998
---- ./poll.h	Sat May 10 14:29:11 2003
-***************
-*** 44,50 ****
-  #define	POLLHUP		0x0010
-  #define	POLLNVAL	0x0020
-
-! int poll _((struct pollfd *, unsigned long, int));
-
-  #ifndef HAS_POLL
-  #  define HAS_POLL
---- 44,50 ----
-  #define	POLLHUP		0x0010
-  #define	POLLNVAL	0x0020
-
-! int io_poll _((struct pollfd *, unsigned long, int));
-
-  #ifndef HAS_POLL
-  #  define HAS_POLL
-+=+=+=+=+=+=+= Cut to the previous line
+        +=+=+=+=+=+=+= Cut after this line
+        diff -c ../IO-orig/IO-1.20/IO.xs ./IO.xs
+        *** ../IO-orig/IO-1.20/IO.xs	Mon Jul 13 23:36:24 1998
+        --- ./IO.xs	Sat May 10 15:20:02 2003
+        ***************
+        *** 205,211 ****
+                ST(0) = sv_2mortal(newSVpv((char*)&pos, sizeof(Fpos_t)));
+            }
+            else {
+        ! 	    ST(0) = &sv_undef;
+                errno = EINVAL;
+            }
+
+        --- 205,211 ----
+                ST(0) = sv_2mortal(newSVpv((char*)&pos, sizeof(Fpos_t)));
+            }
+            else {
+        ! 	    ST(0) = &PL_sv_undef;
+                errno = EINVAL;
+            }
+
+        ***************
+        *** 249,255 ****
+                SvREFCNT_dec(gv);   /* undo increment in newRV() */
+            }
+            else {
+        ! 	    ST(0) = &sv_undef;
+                SvREFCNT_dec(gv);
+            }
+
+        --- 249,255 ----
+                SvREFCNT_dec(gv);   /* undo increment in newRV() */
+            }
+            else {
+        ! 	    ST(0) = &PL_sv_undef;
+                SvREFCNT_dec(gv);
+            }
+
+        ***************
+        *** 272,278 ****
+            i++;
+            fds[j].revents = 0;
+            }
+        !     if((ret = poll(fds,nfd,timeout)) >= 0) {
+            for(i=1, j=0 ; j < nfd ; j++) {
+                sv_setiv(ST(i), fds[j].fd); i++;
+                sv_setiv(ST(i), fds[j].revents); i++;
+        --- 272,278 ----
+            i++;
+            fds[j].revents = 0;
+            }
+        !     if((ret = io_poll(fds,nfd,timeout)) >= 0) {
+            for(i=1, j=0 ; j < nfd ; j++) {
+                sv_setiv(ST(i), fds[j].fd); i++;
+                sv_setiv(ST(i), fds[j].revents); i++;
+        diff -c ../IO-orig/IO-1.20/poll.c ./poll.c
+        *** ../IO-orig/IO-1.20/poll.c	Wed Mar 18 21:34:00 1998
+        --- ./poll.c	Sat May 10 14:28:22 2003
+        ***************
+        *** 35,41 ****
+        # define POLL_EVENTS_MASK (POLL_CAN_READ | POLL_CAN_WRITE | POLL_HAS_EXCP)
+
+        int
+        ! poll(fds, nfds, timeout)
+        struct pollfd *fds;
+        unsigned long nfds;
+        int timeout;
+        --- 35,41 ----
+        # define POLL_EVENTS_MASK (POLL_CAN_READ | POLL_CAN_WRITE | POLL_HAS_EXCP)
+
+        int
+        ! io_poll(fds, nfds, timeout)
+        struct pollfd *fds;
+        unsigned long nfds;
+        int timeout;
+        diff -c ../IO-orig/IO-1.20/poll.h ./poll.h
+        *** ../IO-orig/IO-1.20/poll.h	Wed Apr 15 20:33:02 1998
+        --- ./poll.h	Sat May 10 14:29:11 2003
+        ***************
+        *** 44,50 ****
+        #define	POLLHUP		0x0010
+        #define	POLLNVAL	0x0020
+
+        ! int poll _((struct pollfd *, unsigned long, int));
+
+        #ifndef HAS_POLL
+        #  define HAS_POLL
+        --- 44,50 ----
+        #define	POLLHUP		0x0010
+        #define	POLLNVAL	0x0020
+
+        ! int io_poll _((struct pollfd *, unsigned long, int));
+
+        #ifndef HAS_POLL
+        #  define HAS_POLL
+        +=+=+=+=+=+=+= Cut to the previous line
 
     - compile and install as you usually would, making sure that
       existing but conflicting modules get removed:
@@ -344,8 +357,7 @@
       $ make test
       $ make install
 
-======================================================================
-Instructions for 10.3.x (Panther)
+=head1 Instructions for 10.3.x (Panther)
 
 I highly recommend you install and use the Oracle 10g Instant Client
 for MacOSX 10.3. Compared to traditional Oracle client installations
@@ -389,34 +401,34 @@
 
    Here is the patch:
 
-+=+=+=+=+=+=+= Cut after this line
-*** Makefile.PL.orig	Fri Oct 22 02:07:04 2004
---- Makefile.PL	Fri May 13 14:28:53 2005
-***************
-*** 1252,1257 ****
---- 1252,1258 ----
-  	print "Found $dir/$_\n" if $::opt_d;
-      }, "$OH/rdbms",
-         "$OH/plsql", # oratypes.h sometimes here (eg HPUX 11.23 Itanium Oracle 9.2.0)
-+        "$OH/sdk", # Oracle Instant Client default location (10g)
-      );
-      @h_dir = keys %h_dir;
-      print "Found header files in @h_dir.\n" if @h_dir;
-***************
-*** 1286,1292 ****
---- 1287,1297 ----
-  	open FH, ">define.sql" or warn "Can't create define.sql: $!";
-  	print FH "DEFINE _SQLPLUS_RELEASE\nQUIT\n";
-  	close FH;
-+ 	# we need to temporarily disable login sql scripts
-+ 	my $sqlpath = $ENV{SQLPATH};
-+ 	delete $ENV{SQLPATH};
-  	my $sqlplus_release = `$sqlplus_exe -S /nolog \@define.sql 2>&1`;
-+ 	$ENV{SQLPATH} = $sqlpath if $sqlpath;
-  	unlink "define.sql";
-  	print $sqlplus_release;
-  	if ($sqlplus_release =~ /^DEFINE _SQLPLUS_RELEASE = "(\d?\d)(\d\d)(\d\d)(\d\d)(\d\d)"/) {
-+=+=+=+=+=+=+= Cut to the previous line
+    +=+=+=+=+=+=+= Cut after this line
+    *** Makefile.PL.orig	Fri Oct 22 02:07:04 2004
+    --- Makefile.PL	Fri May 13 14:28:53 2005
+    ***************
+    *** 1252,1257 ****
+    --- 1252,1258 ----
+        print "Found $dir/$_\n" if $::opt_d;
+        }, "$OH/rdbms",
+            "$OH/plsql", # oratypes.h sometimes here (eg HPUX 11.23 Itanium Oracle 9.2.0)
+    +        "$OH/sdk", # Oracle Instant Client default location (10g)
+        );
+        @h_dir = keys %h_dir;
+        print "Found header files in @h_dir.\n" if @h_dir;
+    ***************
+    *** 1286,1292 ****
+    --- 1287,1297 ----
+        open FH, ">define.sql" or warn "Can't create define.sql: $!";
+        print FH "DEFINE _SQLPLUS_RELEASE\nQUIT\n";
+        close FH;
+    + 	# we need to temporarily disable login sql scripts
+    + 	my $sqlpath = $ENV{SQLPATH};
+    + 	delete $ENV{SQLPATH};
+        my $sqlplus_release = `$sqlplus_exe -S /nolog \@define.sql 2>&1`;
+    + 	$ENV{SQLPATH} = $sqlpath if $sqlpath;
+        unlink "define.sql";
+        print $sqlplus_release;
+        if ($sqlplus_release =~ /^DEFINE _SQLPLUS_RELEASE = "(\d?\d)(\d\d)(\d\d)(\d\d)(\d\d)"/) {
+    +=+=+=+=+=+=+= Cut to the previous line
 
    The first hunk allows Makefile.PL to find the header files which
    are in a subdirectory sdk, and the second temporarily disables any
@@ -499,16 +511,13 @@
 gmx.net.
 
 Earlier and original instructions thanks to:
-	Andy Lester <[email protected]>
-	Steve Sapovits <[email protected]>
-	Tom Mornini <[email protected]>
-
+	Andy Lester 
+	Steve Sapovits
+	Tom Mornini
 
 Date: Tue, 15 Apr 2003 16:02:17 +1000
 Subject: Compilation bug in DBI on OSX with threaded Perl 5.8.0
-From: Danial Pearce <[email protected]>
-To: <[email protected]>
-Message-ID: <BAC1DD89.E5E1%[email protected]>
+From: Danial Pearce 
 
 In regards to a previous message on this list:
 
@@ -548,5 +557,34 @@
 cheers
 Danial
 
-PS: Personal replies please, I have not subscribed to this list.
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
 

Added: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Sun.pod
==============================================================================
--- (empty file)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Sun.pod	Wed Jul 11 12:25:29 2012
@@ -0,0 +1,59 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Sun
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on Sun
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Sun - Tips and Hints to Troubleshoot DBD::Oracle on Sun
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 General Info
+
+If you get this on a Solaris 9 and 10 box
+
+  "Outofmemory!
+   Callback called exit.
+   END failed--call queue aborted."
+
+The solution may be as simple as not having you "ORACLE_HOME" Defined in the
+environment.
+
+It seems that having it defined will prevent the error.
+
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+

Added: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Vms.pod
==============================================================================
--- (empty file)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Vms.pod	Wed Jul 11 12:25:29 2012
@@ -0,0 +1,129 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Vms
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on Vms
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Vms - Tips and Hints to Troubleshoot DBD::Oracle on Vms
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 General Info
+
+This is related to Oracle RDBMS 9.2 and later, since Oracle 
+made fundamental changes to oracle installation requirements 
+and factual installation with this release.
+
+Oracle's goal was to make VMS installation be more like on
+*nix and Windows, with an all new Oracle Home structure too,
+requiring an ODS-5 disk to install Oracle Home on instead of
+the good old ODS-2.
+
+Another major change is the introduction of an Oracle generated
+logical name table for oracle logical names like ORA_ROOT and all
+its derivatives like ORA_PROGINT etc. And that this logical name
+table is inserted in LNM$FILE_DEV in LNM$PROCESS_DIRECTORY.
+
+    (LNM$PROCESS_DIRECTORY)
+
+    "LNM$FILE_DEV" = "SERVER_810111112"
+            = "LNM$PROCESS"
+            = "LNM$JOB"
+            = "LNM$GROUP"
+            = "LNM$SYSTEM"
+            = "DECW$LOGICAL_NAMES"
+
+This ensures that any process that needs to have access to 
+oracle gets the environment by just adding one logical name table
+to a central process specific mechanism.
+
+But as it is inserted at the very top of LNM$FILE_DEV it also
+represents a source of misfortune - especially if a user with
+enough privilege to update the oracle table does so (presumably
+unintentionally), as an examble by changing NLS_LANG.
+
+PERL has the abillity to define, redefine and undefine (deassign)
+logical names, but if not told otherwise by the user does it
+in the first table in above list, and not as one would normally
+expect in the process table.
+
+Installing DBI and DBD::Oracle has influence upon this since in
+both cases a few environment variables are read or set in the
+test phase.
+For DBI it is the logical SYS$SCRATCH, which is a JOB logical.
+For DBD-Oracle it is when testing a new feature in the Oracle 
+RDBMS: UTF8 and UTF16 character set functionality, and in order 
+to do this it sets and unsets the related environment variables 
+NLS_NCHAR and NLS_LANG.
+
+If one is not careful this changes the values set in the oracle 
+table - and in the worst case stays active until the next major 
+system reset. It can also be a very hard error to track down 
+since it happens in a place where one normally never looks.
+
+Furthermore, it is very possibly that some or all of the UTF tests
+fails, since if one have a variable like NLS_LANG in his process
+table, then even though 'mms test' sets it in the wrong table
+it is not invoked as it is overruled by the process logical...
+
+The way to ensure that no logicals are set in the oracle table and
+that the UTF tests get the best environment to test in, and that 
+DBI correctly translates the SYS$SCRATCH logical, use the
+logical
+
+      PERL_ENV_TABLES
+
+to ensure that PERL's behavior is to leave the oracle table alone and
+use the process table instead:
+
+      $ DEFINE PERL_ENV_TABLES LNM$PROCESS, LNM$JOB
+
+This tells PERL to use the LNM$PROCESS table as the default place to
+set and unset variables so that only the perl users environment
+is affected when installing DBD::Oracle, and ensures that the
+LNM$JOB table is read when SYS$SCRATCH is to be translated.
+
+PERL_ENV_TABLES is well documented in the PERLVMS man page.
+
+Oracle8 releases are not affected, as they don't have the 
+oracle table implementation, and no UTF support.
+
+Oracle 9.0 is uncertain, since testing has not been possible yet,
+but the remedy will not hurt :)
+
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+

Added: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Win32.pod
==============================================================================
--- (empty file)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Win32.pod	Wed Jul 11 12:25:29 2012
@@ -0,0 +1,279 @@
+#PODNAME: DBD::Oracle::Troubleshooting::Win32
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on Win32
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Win32 - Tips and Hints to Troubleshoot DBD::Oracle on Win32
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 GENERAL INFO
+
+In general, on Windows, it's best to just use ActiveState Perl and the
+PPM package manager to install a pre-built version of DBD::Oracle however only version 1.17 is available there.
+
+If you built Perl with gcc, read README.wingcc.txt as well as this file.
+
+=head1 Oracle Instant Client 11.1.0.6.0 Notes
+
+So far I have managed to get it to Makefile and compile test and install and work.  However it seems one needs to set "NLS_LANG" to a valid value  
+in the environment variables. 
+
+As well IC 11 seems to have trouble finding the .ORA files. A quick fix for this is to add "TNS_ADMIN" 
+to the environment variables and point it to where your .ORA files are.
+
+=head1 Other information, some of which is out of date ---
+
+    DBD-Oracle for Windows and Oracle Instantclient and 10XE (Express Edition)
+    By: John Scoles 
+    The Pythian Group
+
+The preferred method of getting DBD::Oracle is to use a pre-built version from the ActiveState 
+repository, which can be installed with PPM. 
+
+Compiling and installing DBD::Oracle 1.18 or later on a windows 2000 professional or XP OS for use 
+with Oracle instantClient ver 10.2.0.1 & 10.1.0.5 or Oracle XE requires only a few downloads and 
+a minimal number of environment setting.  The procedures below were tested on a clean 
+Windows platform having no Oracle or other development environment installed.
+
+    1) The first part of the process is to download and install the latest version of 
+    Active Perl from http://www.activeperl.com/.
+
+    2) Use the PPM application to get the latest version of DBI
+
+    3) Download the latest DBD::Oracle from http://svn.perl.org/modules/dbd-oracle/trunk/
+
+    4) Download and unzip the Oracle Instant Client (10.2.0.1 or 10.1.0.5) 32 bit from 
+    http://www.oracle.com/technology/tech/oci/instantclient/instantclient.html 
+    You will need all three of these products
+        i.	Instant Client Package - Basic
+        ii.	Instant Client Package - SQL*Plus:
+        iii.	Instant Client Package - SDK:
+    or 
+    
+    install oracle 10XE http://www.oracle.com/technology/products/database/xe/index.html 
+
+    5) You will now need the Microsoft Visual C++ toolkit 2003. Unfortunately this product is no longer available from Microsoft.  
+    The file name was VCToolkitSetup.exe  and is available at this mirror site http://www.filewatcher.com/m/VCToolkitSetup.exe.32952488.0.0.html at the time of writing.
+    Microsoft's replacement for this tool kit is Visual C++ 2005 Express Edition and all attempts to compile DBD::Oracle with this product fail. It has been successfully compiled
+    using a complete edition of Microsoft Visual Studio 2005. 
+    Download and then install this product.
+
+    6) You will also need the Windows SDK. Which can be found at 
+    http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en
+    You have the choice to of either to download the entire SDK and install or run an online install from the page.  
+    Both have been tested and proven to work. 
+
+    7) Next download and install the Microsoft .net framework 1.1 skd from 
+    http://www.microsoft.com/downloads/details.aspx?FamilyID=9b3a2ca6-3647-4070-9f41-a333c6b9181d&displaylang=en 
+
+    8) You will also need a copy of nmake.exe which you can download here http://download.microsoft.com/download/vc15/patch/1.52/w95/en-us/nmake15.exe
+
+    9) Enough Downloading and installing go have a coffee.
+
+    10) You should at this time attempt to connect to an Oracle database with the version SQL*Plus that 
+    you installed in step 4.  If you are unable to connect at this stage then any problems you encounter 
+    later may have nothing to do with DBD::Oracle
+
+    11) On the path where you installed Visual C++ find and edit the vcvars32.bat file as follows.  You may have to modify 
+        these path values depending where you installed the products on you computer, 
+
+        i.   Add  the local path to the windows platform SDK include directory to the Set INCLUDE 
+                Command Line to include the needed files from the Windows SDK. 
+                
+                e.g.  "C:\Program Files\Microsoft Platform SDK\Include;" 
+                
+        ii.  Add the local path to the .net Vc7 lib directory to the Set LIB command
+                to include the needed library file from the .Net SKD
+                
+                e.g. C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\lib;
+                
+            iii. Add the local path to the windows platform SDK Lib directory to the Set Lib command 
+                to include the needed library files from the Windows SDK
+                
+            e.g. C:\Program Files\Microsoft Platform SDK\Lib;
+
+    12) Open a Windows Visual C++ command window from the start menu.
+
+    13) Add the path to the instant client to the Path command. If you are compiling aginst a 10XE db/client then you can skip steps 
+        12 to 14. 
+        e.g.  PATH = C:/Oracle/instantclient;%PATH%
+    
+    14) Using the "Set" command add "ORACLE_HOME=path to Instant client" to the environment variables.
+        e.g. Set ORACLE_HOME=C:\Oracle\instantclient
+    
+    15) Using the "Set" command add "NLS_LANG=.WE8ISO8859P15" to the environment variables. The globalization variable is required, 
+        with this or another compatible value, by Oracle instantclient in order for it to compile correctly.
+        e.g. Set NLS_LANG=.WE8ISO8859P15
+
+    16) Using the "Set" command add "ORACLE_USERID=test/test@test" substituting test with the username/password@database 
+        you wish to run the make test files against. 
+            Note: it is not necessary to do this step for the compile and install to work. 
+        However: The self-test programs included with Oracle-DBD will mostly fail.
+
+    17) Move to the DBD-Oracle directory in the Visual C++ window DOS prompt and enter the following.
+
+                c:\oracle-dbd\>perl Makefile.PL  
+
+        The Makefile should then run and compile Oracle-dbd without reporting any errors.
+
+    18) From this DOS prompt enter the following command
+
+            c:\oracle-dbd\>nmake
+
+        The Visual C++ make executable will then build you DBD-execuable. There should be no errors at this point.
+
+    19) You can test the compile by either entering
+
+            c:\oracle-dbd\>nmake test
+
+        As long as you have given a valid user name, password and database name in step 15 you will see some results.  If it appears to
+        run but you do not get a connection check the following.
+
+            i.   User name password and DB Name 
+            ii.  Ensure the a valid TNSNAMES.ORA file is in the Instantclient directory
+            iii. Attempt to log into the version of SQLPLUS that comes with Instantclient.  
+                        If you manage to log on use the username password and TNS name with 
+                        the Set ORACLE_USERID = and rerun the tests.
+                    iv   If you are compiling against 10XE and have skiped steps 12 to 14 try again bu this time carry out these steps
+
+    20) You can now install DBD-Oracle into you system by entering the following command from the Visual C++ window dos prompt;
+
+                c:\oracle-dbd\>nmake install
+
+    21) You should now be able to run DBD-Oracle on you system
+
+=head1 09/30 2006 from asu 
+
+DBD::Oracle 1.18a
+
+Linux, Debian unstable (
+DBI: 1.52
+perl v5.8.8 built for i486-linux-gnu-thread-multi
+)
+
+Oracle Instant client (10.1.0.5)
+
+The problem is in Makefile.PL. In line 130 the function find_oracle_home
+is used to guess a value form $ORACLE_HOME if it is not set explicitely.
+This value is used in line 138 to setup the environment (regardless
+which client is used).
+
+in line 1443 (sub get_client_version) sqlplus is used to get the
+version string, but for the oracle instant client you must not set
+$ORACLE_HOME (it will generate an error "SP2-0642: SQL*Plus internal
+error state 2165, context 4294967295:0:0")
+
+A solution that worked for me was to set
+local $ENV{ORACLE_HOME} = '';
+in line 1463 immediately before sqlplus is called (but I cannot tell if
+this fails for full client installations)
+
+11/30/05 -- John Scoles 
+I have confirmed that this Makefile.pl will work for both Oracle InstantClient
+10.2.0.1 & 10.1.0.4 using same process the Andy Hassall uses. Starting with a clean OD
+One needs only to get the latest version of Active Perl 5.8.7 use PPM to get DBI and then
+install Microsoft Visual C++ toolkit, Windows SDK, and the Microsoft .net 
+framework 1.1. and modify the vcvars32.bat in C++ dir as follows
+
+   1) Add  the local path to the windows platform SDK include directory to the
+      Set INCLUDE Command Line to include the needed files from the Windows SDK.
+        e.g.  "C:\Program Files\Microsoft Platform SDK\Include;"
+   2) Add the local path to the .net Vc7 lib directory to the Set LIB
+      command to include the needed library files from the .Net SKD
+        e.g. C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\lib;
+   3) Add the local path to the windows platform SDK Lib directory to the Set Lib
+      command to include the needed library files from the Windows SDK
+        e.g. C:\Program Files\Microsoft Platform SDK\Lib;
+
+If one happens to have visual studio installed you may not have to download additional MS products.
+
+12/01/05 --- John Scoles 
+Oracle 10XE
+No big problem here as 10XE seems to use the instantclient as well. Just ensure your
+ NLS_LANG and ORACLE_HOME are set to the same directory that 10XE uses
+
+10/07/05 --John Scoles
+Andy Hassall kindly added some changes to the Makefile.PL
+so it will work for the Instant Client 10g on Windows OSs.  Below is how he set
+up his environment and the steps he preformed to get it to compile.
+
+  Setting environment for using Microsoft Visual Studio .NET 2003 tools.
+  (If you have another version of Visual Studio or Visual C++ installed and wish
+  to use its tools from the command line, run vcvars32.bat for that version.)
+
+  C:\Documents and Settings\andyh>d:
+
+  D:\>cd cygwin\home\andyh\src\pythian
+
+  D:\cygwin\home\andyh\src\pythian>set ORACLE_HOME=d:\lib\instantclient_10_2
+
+  D:\cygwin\home\andyh\src\pythian>set NLS_LANG=.WE8ISO8859P15
+
+  D:\cygwin\home\andyh\src\pythian>set PATH=d:\lib\instantclient_10_2;D:\Program F
+  iles\Microsoft Visual Studio .NET 2003\Common7\IDE;D:\Program Files\Microsoft Vi
+  sual Studio .NET 2003\VC7\BIN;D:\Program Files\Microsoft Visual Studio .NET 2003
+  \Common7\Tools;D:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\
+  bin\prerelease;D:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\
+  bin;D:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\bin;C:\WINNT\Mic
+  rosoft.NET\Framework\v1.1.4322;d:\Perl\bin\;C:\WINNT\system32;C:\WINNT;C:\WINNT\
+  System32\Wbem;D:\Program Files\Microsoft SDK\Bin;D:\Program Files\Microsoft SDK\
+  Bin\WinNT
+
+  D:\cygwin\home\andyh\src\pythian>set ORACLE_USERID=test/test@test102
+
+  D:\cygwin\home\andyh\src\pythian>perl Makefile.PL
+
+4/27/04 -- Jeff Urlwin
+
+Do not untar this distribution in a directory with spaces.  This will not work.
+
+    i.e. C:\Program Files\ORacle\DBD Oracle Distribution is bad while
+    c:\dev\dbd-oracle-1.15 is good ;)
+
+9/14/02 -- Michael Chase
+
+Makefile.PL uses Win32::TieRegistry or Win32::Registry to find the
+current Oracle Home directory if the ORACLE_HOME environment variable
+is not set.  If neither module is installed, you must set ORACLE_HOME
+before running Makefile.PL.  Since the registry location of the current
+Oracle Home is in different locations in different Oracle versions,
+it is usually safer to set ORACLE_HOME before running Makefile.PL.
+
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+

Copied: dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Win64.pod (from r15346, /dbd-oracle/trunk/README.win64.txt)
==============================================================================
--- /dbd-oracle/trunk/README.win64.txt	(original)
+++ dbd-oracle/trunk/lib/DBD/Oracle/Troubleshooting/Win64.pod	Wed Jul 11 12:25:29 2012
@@ -1,4 +1,19 @@
-DBD::Oracle and Windows 64bit 
+#PODNAME: DBD::Oracle::Troubleshooting::Win64
+#ABSTRACT: Tips and Hints to Troubleshoot DBD::Oracle on Win64
+
+
+__END__
+=pod
+
+=head1 NAME
+
+DBD::Oracle::Troubleshooting::Win64 - Tips and Hints to Troubleshoot DBD::Oracle on Win64
+
+=head1 VERSION
+
+version 1.47_00
+
+=head1 DBD::Oracle and Windows 64bit 
 
 I have successfully compiled and installed  DBD::Oracle on Windows 2008 server 64bit operating system today.  
 
@@ -7,12 +22,10 @@
 <a href='http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winx64soft.html'>Instant Client Package - Basic</a>
 along with the Instant Client Package - SQL*Plus and finally the Instant Client Package - SDK.
 
-
 To get it to Make and compile correctly I had to download Microsoft's <a href='http://www.microsoft.com/visualstudio/en-ca/download'>Visual Studio Ultimate</a>
 
 which should contain all the files you need.  It is rather portly at 2+gb so you might want to grab lunch while you are downloading it.
 
-
 After all the above downloading DBB::Oracle installed right out of the box.
 
 All one has to do is select  'Start Menu->All Programs->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio x64 Win64 Command Prompt (2010)' 
@@ -38,10 +51,8 @@
 
 c:\DBD-Oracle>nmake install
 
-
 Which will produce a whole of warnings (the make you can ignore them for now as they do not seem to effect DBD::Oracle at all) and near the end it should output something like this;
 
-
 Generating code
 Finished generating code
         if exist blib\arch\auto\DBD\Oracle\Oracle.dll.manifest mt -nologo -manifest blib\arch\auto\DBD\Oracle\Oracle.dll.manifest -outputresource:blib\arch\auto
@@ -65,16 +76,12 @@
 
 Next you will need to set the ORACLE_USER_ID to a valid user
 
-
 c:\DBD-Oracle>set ORACLE_USER_ID=system/system@XE
 
-
 You will have to set up TNS_ADMIN to point to the Instant Client Directory
 
-
 c:\DBD-Oracle>set TNS_ADMIN=c:\IC_11
 
-
 Most importantly you will have to add the Instant Client directory to your path like this
 
 c:\DBD-Oracle>path = c:\IC_11;%path%
@@ -89,7 +96,6 @@
 are just a false trails. For more info on this check out this page <a href='http://www.alexander-foken.de/Censored%20copy%20of%20Oracle%20Troubleshooter%20HOWTO.html#oneoci'>Oracle Troubleshooter'</a>
 by Alexander Foken.  It is rather dated but the facts of why perl did not find a dll are still valid.
 
-
 now you can do this
 
 c:\DBD-Oracle>nmake test
@@ -106,10 +112,6 @@
 
 At this point you might want to add the Instant Client directory permanently to your path so you will not run into the Dynaloader error again.
 
-
-
-
-
 In general compiling DBD:Oracle for 64 bit machines has been a hit or miss operation.  
 The main thing to remember is you will have to compile using 32 bit Perl and compile DBD::Oracle against a 32bit client
 which sort of defeats the purpose of having a 64bit box.  
@@ -120,7 +122,6 @@
 	Director, Database Architecture and Operations
 	Impact Rx, Inc.
 
-
 I needed to get perl working on a 64-bit Windows Server so I got creative. Since I was unable to build DBD::Oracle on the Windows Server
 (even with Visual Studio 6 installed), I decided that I would try another approach. Here are the steps I took to get it working 
 (yes, this is a hack and I'm not even sure that it does not violate someone's license agreements but I'm not going to be asking anyone 
@@ -161,11 +162,34 @@
 
 	SET PATH=%ORACLE_HOME%\bin;%PATH%                 <== Add 32-bit Oracle Home to beginning of default PATH
 
- 
+=head1 AUTHORS
+
+=over 4
+
+=item *
+
+Tim Bunce <[email protected]>
+
+=item *
+
+John Scoles
+
+=item *
+
+Yanick Champoux <[email protected]>
+
+=item *
+
+Martin J. Evans <[email protected]>
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 1994 by Tim Bunce.
 
-Hopefully, you will be able to include these instructions in the next build of DBD::Oracle to help out other poor souls that are fighting
-this same battle.
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
 
- 
+=cut
 
-