mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
Fixed INSERT DELAYED with Innobase
Fix for shutdown on NT Fixed bug when using wrong dates from blob field. BitKeeper/deleted/.del-df_crash.result~4a3dbee64843953d: Delete: mysql-test/r/df_crash.result BitKeeper/deleted/.del-df_crash.test~4c365178fe437f6: Delete: mysql-test/t/df_crash.test Docs/manual.texi: Changelog innobase/ib_config.h.in: automatic changed file innobase/ib_config.h: automatic changed file mysql-test/r/func_time.result: Test case for bug in time functions mysql-test/r/innobase.result: Test for INSERT DELAYED mysql-test/t/func_time.test: Test case for bug in time functions mysql-test/t/innobase.test: Test for INSERT DELAYED scripts/mysql_convert_table_format.sh: Added --socket and --port sql/ha_innobase.cc: Fix bug when compiling with SAFE_MUTEX Cleaner comment when using SHOW TABLE STATUS sql/mysqld.cc: Fix for shutdown on NT sql/sql_insert.cc: Fixed problem with Innobase and INSERT DELAYED sql/sql_udf.cc: Support for UDF on windows sql/time.cc: Fixed bug when using wrong dates from blob field. strings/ctype-tis620.c: Removed not used variable support-files/mysql-max.spec.sh: Removed old not used section BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
This commit is contained in:
@@ -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 */
|
||||
|
Reference in New Issue
Block a user