summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BitKeeper/etc/logging_ok1
-rw-r--r--sql/ha_berkeley.cc5
-rw-r--r--sql/sql_parse.cc2
3 files changed, 5 insertions, 3 deletions
diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok
index bfd5d8f5b39..f63850d4370 100644
--- a/BitKeeper/etc/logging_ok
+++ b/BitKeeper/etc/logging_ok
@@ -6,3 +6,4 @@ sasha@work.mysql.com
serg@serg.mysql.com
yfaktoro@nslinuxw2.bedford.progress.com
mwagner@evoq.home.mwagner.org
+tim@work.mysql.com
diff --git a/sql/ha_berkeley.cc b/sql/ha_berkeley.cc
index 6cf97f16bb8..7b00720aaef 100644
--- a/sql/ha_berkeley.cc
+++ b/sql/ha_berkeley.cc
@@ -1374,8 +1374,9 @@ int ha_berkeley::external_lock(THD *thd, int lock_type)
&& !(thd->options & OPTION_BEGIN))
{
/*
- F_UNLOCK is done without a transaction commit / rollback. This
- means that something went wrong.
+ F_UNLOCK is done without a transaction commit / rollback.
+ This happens if the thread didn't update any rows or if
+ something went wrong during an update.
We can in this case silenty abort the transaction.
*/
DBUG_PRINT("trans",("aborting transaction"));
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc
index 066885ef30a..00fac25ea15 100644
--- a/sql/sql_parse.cc
+++ b/sql/sql_parse.cc
@@ -1539,7 +1539,7 @@ mysql_execute_command(void)
/* Check if auto_commit mode changed */
if ((org_options ^ lex->options) & OPTION_AUTO_COMMIT)
{
- if (!org_options & OPTION_AUTO_COMMIT)
+ if (!(org_options & OPTION_AUTO_COMMIT))
{
/* We changed to auto_commit mode */
thd->options&= ~OPTION_BEGIN;