summaryrefslogtreecommitdiff
path: root/sql/sql_delete.cc
diff options
context:
space:
mode:
authorunknown <bell@sanja.is.com.ua>2004-11-06 12:46:46 +0200
committerunknown <bell@sanja.is.com.ua>2004-11-06 12:46:46 +0200
commit79a33fa20ce3982b13999cd9a3d4e188d93cb643 (patch)
tree97d16784b93d49dd8dbfed746556c62941380973 /sql/sql_delete.cc
parent9f9893c97139098f27795a8cd96ef4b131a94a9e (diff)
parent1ce11fe0416512f9a9a4133cd7feaf2c68a483d8 (diff)
downloadmariadb-git-79a33fa20ce3982b13999cd9a3d4e188d93cb643.tar.gz
Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-view-5.0 mysql-test/r/view.result: Auto merged mysql-test/t/view.test: Auto merged sql/item_subselect.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_delete.cc: Auto merged sql/sql_insert.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_update.cc: Auto merged sql/sql_view.cc: Auto merged sql/table.h: Auto merged
Diffstat (limited to 'sql/sql_delete.cc')
-rw-r--r--sql/sql_delete.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/sql/sql_delete.cc b/sql/sql_delete.cc
index 7163bf10bcc..8bdf19195f3 100644
--- a/sql/sql_delete.cc
+++ b/sql/sql_delete.cc
@@ -429,6 +429,8 @@ multi_delete::initialize_tables(JOIN *join)
walk= walk->next_local;
/* Don't use KEYREAD optimization on this table */
tbl->no_keyread=1;
+ /* Don't use record cache */
+ tbl->no_cache= 1;
tbl->used_keys.clear_all();
if (tbl->file->has_transactions())
log_delayed= transactional_tables= 1;
@@ -744,8 +746,11 @@ int mysql_truncate(THD *thd, TABLE_LIST *table_list, bool dont_send_ok)
{
/* Probably InnoDB table */
table_list->lock_type= TL_WRITE;
- DBUG_RETURN(mysql_delete(thd, table_list, (COND*) 0, (SQL_LIST*) 0,
- HA_POS_ERROR, 0));
+ ha_enable_transaction(thd, FALSE);
+ error= mysql_delete(thd, table_list, (COND*) 0, (SQL_LIST*) 0,
+ HA_POS_ERROR, 0);
+ ha_enable_transaction(thd, TRUE);
+ DBUG_RETURN(error);
}
if (lock_and_wait_for_table_name(thd, table_list))
DBUG_RETURN(-1);