From: Date: May 7 2005 2:17pm Subject: bk commit into 5.0 tree (gluh:1.1929) BUG#9897 List-Archive: http://lists.mysql.com/internals/24641 X-Bug: 9897 Message-Id: <200505071217.j47CHwj3013147@localhost.localdomain> Below is the list of changes that have just been committed into a local 5.0 repository of gluh. When gluh does a push these changes will be propagated to the main repository and, within 24 hours after the push, to the public repository. For information on how to access the public repository see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html ChangeSet 1.1929 05/05/07 12:17:54 gluh@stripped +3 -0 Fix for bug#9897: Views: 'Check Table' crashes MySQL, with a view and a table in the statement thd->lex->derived_tables should be zero(it may be changed if we open a view) sql/sql_table.cc 1.241 05/05/07 12:17:49 gluh@stripped +7 -0 Fix for bug#9897: Views: 'Check Table' crashes MySQL, with a view and a table in the statement mysql-test/t/check.test 1.8 05/05/07 12:17:49 gluh@stripped +12 -0 Fix for bug#9897: Views: 'Check Table' crashes MySQL, with a view and a table in the statement mysql-test/r/check.result 1.5 05/05/07 12:17:49 gluh@stripped +9 -0 Fix for bug#9897: Views: 'Check Table' crashes MySQL, with a view and a table in the statement # This is a BitKeeper patch. What follows are the unified diffs for the # set of deltas contained in the patch. The rest of the patch, the part # that BitKeeper cares about, is below these diffs. # User: gluh # Host: mobby.(none) # Root: /home/gluh/MySQL/Bugs/5.0.9897 --- 1.240/sql/sql_table.cc 2005-05-02 17:19:34 +00:00 +++ 1.241/sql/sql_table.cc 2005-05-07 12:17:49 +00:00 @@ -2342,6 +2342,13 @@ } close_thread_tables(thd); table->table=0; // For query cache + /* + thd->lex->derived_tables may be set to non zero value if we open + a view. It is necessary to clear thd->lex->derived_tables flag + to prevent processing of derived tables during next open_and_lock_tables + if next table is a real table. + */ + thd->lex->derived_tables= 0; if (protocol->write()) goto err; } --- 1.4/mysql-test/r/check.result 2002-03-13 17:20:16 +00:00 +++ 1.5/mysql-test/r/check.result 2005-05-07 12:17:49 +00:00 @@ -5,3 +5,12 @@ Table Op Msg_type Msg_text test.t1 check status OK drop table t1; +Create table t1(f1 int); +Create table t2(f1 int); +Create view v1 as Select * from t1; +Check Table v1,t2; +Table Op Msg_type Msg_text +test.v1 check status OK +test.t2 check status OK +drop view v1; +drop table t1, t2; --- 1.7/mysql-test/t/check.test 2003-01-05 23:48:51 +00:00 +++ 1.8/mysql-test/t/check.test 2005-05-07 12:17:49 +00:00 @@ -22,3 +22,15 @@ reap; drop table t1; +# +# Bug #9897 Views: 'Check Table' crashes MySQL, with a view and a table +# in the statement +# + +connection default; +Create table t1(f1 int); +Create table t2(f1 int); +Create view v1 as Select * from t1; +Check Table v1,t2; +drop view v1; +drop table t1, t2;