Quoting Bojan Smojver <[EMAIL PROTECTED]>:

This was never compiled, let alone tested. It is here as a prototype
for Ronen's suggestion.

For folks using MySQL...

--
Bojan
--- apr_dbd_mysql.c.orig	2006-04-28 15:24:56.000000000 +1000
+++ apr_dbd_mysql.c	2006-04-28 15:24:37.000000000 +1000
@@ -517,6 +517,16 @@
     ret |= mysql_autocommit(trans->handle->conn, 1);
     return ret;
 }
+static int dbd_mysql_rollback_transaction(apr_dbd_transaction_t *trans)
+{
+    int ret = -1;
+    if (trans) {
+        trans->errnum = 0;
+        ret = mysql_rollback(trans->handle->conn);
+    }
+    ret |= mysql_autocommit(trans->handle->conn, 1);
+    return ret;
+}
 /* Whether or not transactions work depends on whether the
  * underlying DB supports them within MySQL.  Unfortunately
  * it fails silently with the default InnoDB.
@@ -674,7 +684,8 @@
     dbd_mysql_pvselect,
     dbd_mysql_pquery,
     dbd_mysql_pselect,
-    dbd_mysql_get_name
+    dbd_mysql_get_name,
+    dbd_mysql_rollback_transaction
 };
 
 #endif

Reply via email to