Commit 6ef90e0a authored by unknown's avatar unknown

ALTER TABLE closes all open HANDLER's for the table in question

fixed error handling in HANDLER ... READ FIRST


sql/sql_handler.cc:
  fix error handling in HANDLER ... READ FIRST
sql/sql_table.cc:
  ALTER TABLE closes all open HANDLER's for the table in question
parent 8d982bde
......@@ -153,10 +153,13 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables,
{
switch(mode) {
case RFIRST:
err=keyname ?
table->file->index_first(table->record[0]) :
table->file->rnd_init(1) ||
table->file->rnd_next(table->record[0]);
if (keyname)
err=table->file->index_first(table->record[0]);
else
{
if (!(err=table->file->rnd_init(1)))
err=table->file->rnd_next(table->record[0]);
}
mode=RNEXT;
break;
case RLAST:
......
......@@ -1374,6 +1374,7 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
new_db=db;
used_fields=create_info->used_fields;
mysql_ha_closeall(thd, table_list);
if (!(table=open_ltable(thd,table_list,TL_WRITE_ALLOW_READ)))
DBUG_RETURN(-1);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment