summaryrefslogtreecommitdiff
path: root/sql/ha_innodb.cc
diff options
context:
space:
mode:
authorheikki@hundin.mysql.fi <>2004-12-22 11:01:25 +0200
committerheikki@hundin.mysql.fi <>2004-12-22 11:01:25 +0200
commit917e8b4da32b612b29e76938362eef70b6420cd0 (patch)
tree2fdaec85819fe3b7c6575771c9feea3c8744149a /sql/ha_innodb.cc
parentb56085a87ecea5d4f524e4a1308cefccbd66e2f1 (diff)
downloadmariadb-git-917e8b4da32b612b29e76938362eef70b6420cd0.tar.gz
ha_innodb.cc:
If AUTOCOMMIT=1, do not acquire an InnoDB table lock in LOCK TABLES; this makes porting of old MyISAM applications to InnoDB easier, since in that mode InnoDB table locks caused deadlocks very easily
Diffstat (limited to 'sql/ha_innodb.cc')
-rw-r--r--sql/ha_innodb.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/ha_innodb.cc b/sql/ha_innodb.cc
index c36075207ed..69d9d885b8e 100644
--- a/sql/ha_innodb.cc
+++ b/sql/ha_innodb.cc
@@ -4702,7 +4702,8 @@ ha_innobase::external_lock(
if (prebuilt->select_lock_type != LOCK_NONE) {
if (thd->in_lock_tables &&
- thd->variables.innodb_table_locks) {
+ thd->variables.innodb_table_locks &&
+ (thd->options & OPTION_NOT_AUTOCOMMIT)) {
ulint error;
error = row_lock_table_for_mysql(prebuilt);