[svn:dbd-oracle] r14879 - dbd-oracle/branches/FAN

[email protected] Fri, 27 May 2011 09:19:11 -0700 (PDT)
Newsgroups perl.dbd.oracle.changes
Message-ID <[email protected]>
Author: byterock
Date: Fri May 27 09:19:10 2011
New Revision: 14879

Modified:
   dbd-oracle/branches/FAN/dbdimp.c
   dbd-oracle/branches/FAN/oci8.c

Log:
fix it all

Modified: dbd-oracle/branches/FAN/dbdimp.c
==============================================================================
--- dbd-oracle/branches/FAN/dbdimp.c	(original)
+++ dbd-oracle/branches/FAN/dbdimp.c	Fri May 27 09:19:10 2011
@@ -582,11 +582,13 @@
 			forced_new_environment = 1;
 		}
 	}
+dbd_verbose=15;
     if (!imp_dbh->envhp ) {
 		SV **init_mode_sv;
-		ub4 init_mode = OCI_OBJECT;	/* needed for LOBs (8.0.4)	*/
+		ub4 init_mode = OCI_EVENTS|OCI_OBJECT;	/* needed for LOBs (8.0.4)	*/
 		DBD_ATTRIB_GET_IV(attr, "ora_init_mode",13, init_mode_sv, init_mode);
 
+PerlIO_printf(DBILOGFP,"HA init mode=%d.\n",init_mode);
 		{
 			size_t rsize = 0;
 			/* Get CLIENT char and nchar charset id values */
@@ -888,6 +890,15 @@
 
     /* set up TAF callback if wanted */
 
+  
+    status = reg_ha_callback(imp_dbh);
+
+  if (status != OCI_SUCCESS) {
+                        oci_error(dbh, NULL, status,
+                                "Setting ha Callback Failed! ");
+                        return 0;
+                }
+dbd_verbose=0;
 
     if (imp_dbh->using_taf){
 		bool	can_taf;

Modified: dbd-oracle/branches/FAN/oci8.c
==============================================================================
--- dbd-oracle/branches/FAN/oci8.c	(original)
+++ dbd-oracle/branches/FAN/oci8.c	Fri May 27 09:19:10 2011
@@ -1353,7 +1353,7 @@
   		PerlIO_printf(DBILOGFP, " In reg_ha_callback\n");
 	}
 
-    OCIAttrSet_log_stat(imp_dbh->srvhp, (ub4) OCI_HTYPE_ENV,
+    OCIAttrSet_log_stat(imp_dbh->envhp, (ub4) OCI_HTYPE_ENV,
 								(dvoid *) &ha_cbk, (ub4) 0,
 								(ub4) OCI_ATTR_EVTCBK, imp_dbh->errhp, status);
 
@@ -1363,7 +1363,7 @@
 	}
 */
 
-   OCIAttrSet_log_stat(imp_dbh->srvhp, (ub4) OCI_HTYPE_ENV,
+   OCIAttrSet_log_stat(imp_dbh->envhp, (ub4) OCI_HTYPE_ENV,
 								(dvoid *)imp_dbh->srvhp, (ub4) 0,
 								(ub4) OCI_ATTR_EVTCTX, imp_dbh->errhp, status);
  /*  if (status != OCI_SUCCESS){