diff options
author | monty@mysql.com <> | 2003-11-20 22:30:48 +0200 |
---|---|---|
committer | monty@mysql.com <> | 2003-11-20 22:30:48 +0200 |
commit | b01fcb4e1438dcc1f9a31bcab30b98b578d1704a (patch) | |
tree | 47f72b790e762b88773ac94032106a9fec3ee4a4 /sql/sql_handler.cc | |
parent | 55e07608fd7bcb47bd92f744a07b7631aa91d9c6 (diff) | |
parent | dd287a4cdf4b8937ce428678fa096134a5ae8a88 (diff) | |
download | mariadb-git-b01fcb4e1438dcc1f9a31bcab30b98b578d1704a.tar.gz |
Merge with 4.0 to get:
Fix for storing negative values in decimal fields
Fix for FLUSH TABLE with HANDLER
Diffstat (limited to 'sql/sql_handler.cc')
-rw-r--r-- | sql/sql_handler.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sql/sql_handler.cc b/sql/sql_handler.cc index 88fedaad380..405cfdb5bdc 100644 --- a/sql/sql_handler.cc +++ b/sql/sql_handler.cc @@ -297,7 +297,20 @@ static TABLE **find_table_ptr_by_name(THD *thd, const char *db, !my_strcasecmp(system_charset_info, (is_alias ? table->table_name : table->real_name), table_name)) + { + if (table->version != refresh_version) + { + VOID(pthread_mutex_lock(&LOCK_open)); + if (close_thread_table(thd, ptr)) + { + /* Tell threads waiting for refresh that something has happened */ + VOID(pthread_cond_broadcast(&COND_refresh)); + } + VOID(pthread_mutex_unlock(&LOCK_open)); + continue; + } break; + } ptr= &(table->next); } return ptr; |