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;
|
handler t2 read next;
|
||||||
a b
|
a b
|
||||||
18 eee
|
18 eee
|
||||||
|
alter table t1 type=MyISAM;
|
||||||
handler t2 read next;
|
handler t2 read next;
|
||||||
a b
|
a b
|
||||||
19 fff
|
19 fff
|
||||||
|
|
|
@ -58,8 +58,10 @@ handler t2 read a=(19) where b="yyy";
|
||||||
|
|
||||||
handler t2 read first;
|
handler t2 read first;
|
||||||
handler t2 read next;
|
handler t2 read next;
|
||||||
|
alter table t1 type=MyISAM;
|
||||||
handler t2 read next;
|
handler t2 read next;
|
||||||
!$1064 handler t2 read last;
|
!$1064 handler t2 read last;
|
||||||
|
|
||||||
handler t2 close;
|
handler t2 close;
|
||||||
drop table if exists t1;
|
drop table if exists t1;
|
||||||
|
|
||||||
|
|
|
@ -130,7 +130,11 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables,
|
||||||
select_limit+=offset_limit;
|
select_limit+=offset_limit;
|
||||||
send_fields(thd,list,1);
|
send_fields(thd,list,1);
|
||||||
|
|
||||||
|
HANDLER_TABLES_HACK(thd);
|
||||||
MYSQL_LOCK *lock=mysql_lock_tables(thd,&tables->table,1);
|
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; )
|
for (uint num_rows=0; num_rows < select_limit; )
|
||||||
{
|
{
|
||||||
|
@ -238,6 +242,7 @@ ok:
|
||||||
return 0;
|
return 0;
|
||||||
err:
|
err:
|
||||||
mysql_unlock_tables(thd,lock);
|
mysql_unlock_tables(thd,lock);
|
||||||
|
err0:
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue