summaryrefslogtreecommitdiff
path: root/sql/sql_delete.cc
diff options
context:
space:
mode:
authorunknown <ingo@mysql.com>2005-04-16 17:58:11 +0200
committerunknown <ingo@mysql.com>2005-04-16 17:58:11 +0200
commitcef7e66e988793950c685ab998293353078c4b8e (patch)
tree9968109506d6a551ff1f11e8e8a4afd3dea63f1e /sql/sql_delete.cc
parent550fff6b722148a6c49fa3436bb2feb4219257a7 (diff)
parentdacff5a90853c0e0742c45c1f3c8196fd9344137 (diff)
downloadmariadb-git-cef7e66e988793950c685ab998293353078c4b8e.tar.gz
Merge
myisam/mi_search.c: Auto merged myisam/mi_write.c: Auto merged mysql-test/r/innodb.result: Auto merged mysql-test/t/innodb.test: Auto merged sql/sql_delete.cc: Auto merged sql/sql_lex.cc: Auto merged sql/sql_yacc.yy: Auto merged mysql-test/r/myisam.result: SCCS merged mysql-test/t/myisam.test: SCCS merged
Diffstat (limited to 'sql/sql_delete.cc')
-rw-r--r--sql/sql_delete.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/sql/sql_delete.cc b/sql/sql_delete.cc
index eb3775f66ea..d524bbcf164 100644
--- a/sql/sql_delete.cc
+++ b/sql/sql_delete.cc
@@ -759,12 +759,15 @@ bool mysql_truncate(THD *thd, TABLE_LIST *table_list, bool dont_send_ok)
if (!ha_supports_generate(table_type) || thd->lex->sphead)
{
/* Probably InnoDB table */
+ ulong save_options= thd->options;
table_list->lock_type= TL_WRITE;
+ thd->options&= ~(ulong) (OPTION_BEGIN | OPTION_NOT_AUTOCOMMIT);
ha_enable_transaction(thd, FALSE);
mysql_init_select(thd->lex);
error= mysql_delete(thd, table_list, (COND*) 0, (SQL_LIST*) 0,
HA_POS_ERROR, 0);
ha_enable_transaction(thd, TRUE);
+ thd->options= save_options;
DBUG_RETURN(error);
}
if (lock_and_wait_for_table_name(thd, table_list))