diff options
author | monty@donna.mysql.fi <> | 2001-04-09 21:08:56 +0300 |
---|---|---|
committer | monty@donna.mysql.fi <> | 2001-04-09 21:08:56 +0300 |
commit | 7f21a7a6daff97675749db987b12a080bb4c3799 (patch) | |
tree | 8f547099445a7673d67da016f7a567772cd5552c /sql/sql_insert.cc | |
parent | 3d19a5d4bb3bc3ab55574000ee014d3d65d17b12 (diff) | |
download | mariadb-git-7f21a7a6daff97675749db987b12a080bb4c3799.tar.gz |
Fixed INSERT DELAYED with Innobase
Fix for shutdown on NT
Fixed bug when using wrong dates from blob field.
Diffstat (limited to 'sql/sql_insert.cc')
-rw-r--r-- | sql/sql_insert.cc | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index d2e7c98333d..3be195b8984 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -225,7 +225,7 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List<Item> &fields, break; } } - if (lock_type == TL_WRITE_DELAYED && ! table->file->has_transactions()) + if (lock_type == TL_WRITE_DELAYED) { error=write_delayed(thd,table,duplic,query, thd->query_length, log_on); query=0; @@ -888,6 +888,7 @@ static pthread_handler_decl(handle_delayed_insert,arg) my_pthread_setspecific_ptr(THR_THD, thd) || my_pthread_setspecific_ptr(THR_NET, &thd->net)) { + thd->fatal_error=1; strmov(thd->net.last_error,ER(thd->net.last_errno=ER_OUT_OF_RESOURCES)); goto end; } @@ -906,6 +907,12 @@ static pthread_handler_decl(handle_delayed_insert,arg) thd->fatal_error=1; // Abort waiting inserts goto end; } + if (di->table->file->has_transactions()) + { + thd->fatal_error=1; + my_error(ER_ILLEGAL_HA, MYF(0), di->table_list->real_name); + goto end; + } di->table->copy_blobs=1; /* One can now use this */ |