[svn:dbd-oracle] r15283 - in dbd-oracle/trunk: . lib/DBD
[email protected] Sun, 22 Apr 2012 04:12:02 -0700 (PDT)
| Newsgroups | perl.dbd.oracle.changes |
|---|---|
| Message-ID | <[email protected]> |
Author: mjevans
Date: Sun Apr 22 04:12:01 2012
New Revision: 15283
Modified:
dbd-oracle/trunk/Changes
dbd-oracle/trunk/dbdimp.c
dbd-oracle/trunk/lib/DBD/Oracle.pm
Log:
fix rt75721 - does not build with oracle 9.2
added notes to pod saying which attributes need 10.1
Modified: dbd-oracle/trunk/Changes
==============================================================================
--- dbd-oracle/trunk/Changes (original)
+++ dbd-oracle/trunk/Changes Sun Apr 22 04:12:01 2012
@@ -6,9 +6,12 @@
- Fixed RT76695 - offset passed to ora_fetch_scroll should not affect
normal fetches (Martin J. Evans)
- - Fixed part of RT76410 - fetch after fetch absolute always returns
+ - Fixed RT76410 - fetch after fetch absolute always returns
the same row (Martin J. Evans);
+ - Fixed RT75721 - DBD::Oracle does not build with Oracle 9.2
+ (Martin J. Evans)
+
[MISCELLANEOUS]
- minor change to confusing debug output for input parameters
Modified: dbd-oracle/trunk/dbdimp.c
==============================================================================
--- dbd-oracle/trunk/dbdimp.c (original)
+++ dbd-oracle/trunk/dbdimp.c Sun Apr 22 04:12:01 2012
@@ -437,6 +437,7 @@
}
#endif /*ORA_OCI_112*/
+#ifdef OCI_ATTR_ACTION
if ((svp=DBD_ATTRIB_GET_SVP(attr, "ora_action", 10)) && SvOK(*svp)) {
STRLEN svp_len;
if (!SvPOK(*svp))
@@ -445,7 +446,9 @@
imp_dbh->actionl= (ub4) svp_len;
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->action,imp_dbh->actionl,OCI_ATTR_ACTION,imp_dbh->errhp, status);
}
+#endif
+#ifdef OCI_ATTR_MODULE
if ((svp=DBD_ATTRIB_GET_SVP(attr, "ora_module_name", 15)) && SvOK(*svp)) {
STRLEN svp_len;
if (!SvPOK(*svp))
@@ -455,6 +458,7 @@
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->module_name,imp_dbh->module_namel,OCI_ATTR_MODULE,imp_dbh->errhp, status);
}
+#endif
if ((svp=DBD_ATTRIB_GET_SVP(attr, "ora_client_identifier", 21)) && SvOK(*svp)) {
STRLEN svp_len;
if (!SvPOK(*svp))
@@ -464,6 +468,7 @@
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->client_identifier,imp_dbh->client_identifierl,OCI_ATTR_CLIENT_IDENTIFIER,imp_dbh->errhp, status);
}
+#ifdef OCI_ATTR_CLIENT_INFO
if ((svp=DBD_ATTRIB_GET_SVP(attr, "ora_client_info", 15)) && SvOK(*svp)) {
STRLEN svp_len;
if (!SvPOK(*svp))
@@ -473,7 +478,7 @@
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->client_info,imp_dbh->client_infol,OCI_ATTR_CLIENT_INFO,imp_dbh->errhp, status);
}
-
+#endif
/* TAF Events */
imp_dbh->using_taf = 0;
@@ -1182,35 +1187,35 @@
else if (kl==13 && strEQ(key, "ora_taf_sleep") ) {
imp_dbh->taf_sleep = SvIV (valuesv);
}
+#ifdef OCI_ATTR_ACTION
else if (kl==10 && strEQ(key, "ora_action") ) {
imp_dbh->action = (char *) SvPV (valuesv, vl );
imp_dbh->actionl= (ub4) vl;
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->action,imp_dbh->actionl,OCI_ATTR_ACTION,imp_dbh->errhp, status);
}
- else if (kl==10 && strEQ(key, "ora_action") ) {
- imp_dbh->action = (char *) SvPV (valuesv, vl );
- imp_dbh->actionl= (ub4) vl;
- OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->action,imp_dbh->actionl,OCI_ATTR_ACTION,imp_dbh->errhp, status);
-
- }
+#endif
else if (kl==21 && strEQ(key, "ora_client_identifier") ) {
imp_dbh->client_identifier = (char *) SvPV (valuesv, vl );
imp_dbh->client_identifierl= (ub4) vl;
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->client_identifier,imp_dbh->client_identifierl,OCI_ATTR_CLIENT_IDENTIFIER,imp_dbh->errhp, status);
}
+#ifdef OCI_ATTR_CLIENT_INFO
else if (kl==15 && strEQ(key, "ora_client_info") ) {
imp_dbh->client_info = (char *) SvPV (valuesv, vl );
imp_dbh->client_infol= (ub4) vl;
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->client_info,imp_dbh->client_infol,OCI_ATTR_CLIENT_INFO,imp_dbh->errhp, status);
}
+#endif
+#ifdef OCI_ATTR_MODULE
else if (kl==15 && strEQ(key, "ora_module_name") ) {
imp_dbh->module_name = (char *) SvPV (valuesv, vl );
imp_dbh->module_namel= (ub4) vl;
OCIAttrSet_log_stat(imp_dbh, imp_dbh->seshp,OCI_HTYPE_SESSION, imp_dbh->module_name,imp_dbh->module_namel,OCI_ATTR_MODULE,imp_dbh->errhp, status);
}
+#endif
else if (kl==20 && strEQ(key, "ora_oci_success_warn") ) {
oci_warn = SvIV (valuesv);
}
@@ -1301,9 +1306,11 @@
else if (kl==13 && strEQ(key, "ora_taf_sleep") ) {
retsv = newSViv(imp_dbh->taf_sleep);
}
+#ifdef OCI_ATTR_ACTION
else if (kl==10 && strEQ(key, "ora_action")) {
retsv = newSVpv((char *)imp_dbh->action,0);
}
+#endif
else if (kl==21 && strEQ(key, "ora_client_identifier")) {
retsv = newSVpv((char *)imp_dbh->client_identifier,0);
}
Modified: dbd-oracle/trunk/lib/DBD/Oracle.pm
==============================================================================
--- dbd-oracle/trunk/lib/DBD/Oracle.pm (original)
+++ dbd-oracle/trunk/lib/DBD/Oracle.pm Sun Apr 22 04:12:01 2012
@@ -1389,7 +1389,7 @@
If you try to set up a callback without it being enabled DBD::Oracle will croak.
-It is outside the scope of this documents to go through all of the
+It is outside the scope of this document to go through all of the
possible TAF situations you might want to set up but here is a simple
example:
@@ -1607,6 +1607,8 @@
The maximum size is 48 bytes.
+NOTE: You will need an Oracle client 10.1 or later to use this.
+
=head4 ora_driver_name
For 11g and later you can now set the name of the driver layer using OCI.
@@ -1629,6 +1631,8 @@
$dbh->{ora_client_info} = "Remote2";
+NOTE: You will need an Oracle client 10.1 or later to use this.
+
=head4 ora_client_identifier
Allows you to specify the user identifier in the session handle.
@@ -1653,6 +1657,8 @@
$dbh->{ora_action} = "New Long Query 22";
+NOTE: You will need an Oracle client 10.1 or later to use this.
+
=head4 ora_dbh_share
Requires at least Perl 5.8.0 compiled with ithreads.