Commit 8ed5d70f authored by unknown's avatar unknown
Browse files

Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0

into mysql.com:/home/gluh/MySQL/Bugs/5.0.9897


sql/sql_table.cc:
  Auto merged
parents 0228f897 e4c24674
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -5,3 +5,12 @@ insert into t1 values (200000);
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;
+12 −0
Original line number Diff line number Diff line
@@ -22,3 +22,15 @@ connection con1;
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;
+7 −0
Original line number Diff line number Diff line
@@ -2344,6 +2344,13 @@ static bool mysql_admin_table(THD* thd, TABLE_LIST* tables,
    }
    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;
  }