diff options
author | unknown <gluh@gluh.mysql.r18.ru> | 2005-03-24 16:32:11 +0300 |
---|---|---|
committer | unknown <gluh@gluh.mysql.r18.ru> | 2005-03-24 16:32:11 +0300 |
commit | a7f5977c3ca9ff15b754183e47f39785d9ae52f1 (patch) | |
tree | e0221d9157620ce7446c2c6c571f7aec72efc5d7 /sql/sql_select.cc | |
parent | 704b8576f744800f50bc3d56e87a8ee4f7617531 (diff) | |
download | mariadb-git-a7f5977c3ca9ff15b754183e47f39785d9ae52f1.tar.gz |
Bug #9317: Wrong count for tables in INFORMATION_SCHEMA
there was no check of result of
table->file->write_row() function. When count of rows was
more than table max_rows(HEAP table) the following recodrs
were not inserted to the table
-'schema_table_store_record' function is added.
The function checks result of write_row function
and convert HEAP table to MyISAM if necessary
- Result check after write_row is added into all
I_S function which store the records to I_S tables
mysql-test/r/information_schema.result:
Bug #9317: Wrong count for tables in INFORMATION_SCHEMA
mysql-test/t/information_schema.test:
Bug #9317: Wrong count for tables in INFORMATION_SCHEMA
sql/sql_select.cc:
Bug #9317: Wrong count for tables in INFORMATION_SCHEMA
sql/sql_show.cc:
Bug #9317: Wrong count for tables in INFORMATION_SCHEMA
sql/table.h:
Bug #9317: Wrong count for tables in INFORMATION_SCHEMA
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r-- | sql/sql_select.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 856fb937b6e..461a0f8b9d6 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -8714,8 +8714,9 @@ bool create_myisam_from_heap(THD *thd, TABLE *table, TMP_TABLE_PARAM *param, *table= new_table; table->s= &table->share_not_to_be_used; table->file->change_table_ptr(table); - thd->proc_info= (!strcmp(save_proc_info,"Copying to tmp table") ? - "Copying to tmp table on disk" : save_proc_info); + if (save_proc_info) + thd->proc_info= (!strcmp(save_proc_info,"Copying to tmp table") ? + "Copying to tmp table on disk" : save_proc_info); DBUG_RETURN(0); err: |