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