mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
handler+alter table
mysql-test/r/handler.result: alter table test mysql-test/t/handler.test: alter table test sql/sql_handler.cc: bugfix
This commit is contained in:
parent
dc4bbdb75e
commit
0abc68fbeb
3 changed files with 8 additions and 0 deletions
|
@ -129,6 +129,7 @@ a b
|
|||
handler t2 read next;
|
||||
a b
|
||||
18 eee
|
||||
alter table t1 type=MyISAM;
|
||||
handler t2 read next;
|
||||
a b
|
||||
19 fff
|
||||
|
|
|
@ -58,8 +58,10 @@ handler t2 read a=(19) where b="yyy";
|
|||
|
||||
handler t2 read first;
|
||||
handler t2 read next;
|
||||
alter table t1 type=MyISAM;
|
||||
handler t2 read next;
|
||||
!$1064 handler t2 read last;
|
||||
|
||||
handler t2 close;
|
||||
drop table if exists t1;
|
||||
|
||||
|
|
|
@ -130,7 +130,11 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables,
|
|||
select_limit+=offset_limit;
|
||||
send_fields(thd,list,1);
|
||||
|
||||
HANDLER_TABLES_HACK(thd);
|
||||
MYSQL_LOCK *lock=mysql_lock_tables(thd,&tables->table,1);
|
||||
HANDLER_TABLES_HACK(thd);
|
||||
if (!lock)
|
||||
goto err0; // mysql_lock_tables() printed error message already
|
||||
|
||||
for (uint num_rows=0; num_rows < select_limit; )
|
||||
{
|
||||
|
@ -238,6 +242,7 @@ ok:
|
|||
return 0;
|
||||
err:
|
||||
mysql_unlock_tables(thd,lock);
|
||||
err0:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue