Make ELOOP be considered a File Not Found error when it comes from handlerton
Fix symlink-aria && symlink-myisam to account for this possibility.
This commit is contained in:
parent
032678ad18
commit
06f1f1aa6e
@ -14,7 +14,7 @@ set debug_sync='mi_open_datafile SIGNAL ok WAIT_FOR go';
|
|||||||
select * from t1;
|
select * from t1;
|
||||||
set debug_sync='now WAIT_FOR ok';
|
set debug_sync='now WAIT_FOR ok';
|
||||||
set debug_sync='now SIGNAL go';
|
set debug_sync='now SIGNAL go';
|
||||||
ERROR HY000: File 'MYSQLTEST_VARDIR/tmp/foo/t1.MAD' not found (Errcode: 20 "Not a directory")
|
ERROR HY000: File 'MYSQLTEST_VARDIR/tmp/foo/t1.MAD' not found (Errcode: 20 <errmsg>)
|
||||||
flush tables;
|
flush tables;
|
||||||
drop table if exists t1;
|
drop table if exists t1;
|
||||||
create table t1 (a int, b char(16), index (a))
|
create table t1 (a int, b char(16), index (a))
|
||||||
@ -32,7 +32,7 @@ set debug_sync='mi_open_kfile SIGNAL waiting WAIT_FOR run';
|
|||||||
select a from t1;
|
select a from t1;
|
||||||
set debug_sync='now WAIT_FOR waiting';
|
set debug_sync='now WAIT_FOR waiting';
|
||||||
set debug_sync='now SIGNAL run';
|
set debug_sync='now SIGNAL run';
|
||||||
ERROR HY000: Can't find file: './test/t1.MAI' (errno: 20 "Not a directory")
|
ERROR HY000: Can't find file: './test/t1.MAI' (errno: 20 <errmsg>)
|
||||||
flush tables;
|
flush tables;
|
||||||
drop table if exists t1;
|
drop table if exists t1;
|
||||||
drop table mysql.t1;
|
drop table mysql.t1;
|
||||||
|
@ -13,7 +13,7 @@ set debug_sync='mi_open_datafile SIGNAL ok WAIT_FOR go';
|
|||||||
select * from t1;
|
select * from t1;
|
||||||
set debug_sync='now WAIT_FOR ok';
|
set debug_sync='now WAIT_FOR ok';
|
||||||
set debug_sync='now SIGNAL go';
|
set debug_sync='now SIGNAL go';
|
||||||
ERROR HY000: File 'MYSQLTEST_VARDIR/tmp/foo/t1.MYD' not found (Errcode: 20 "Not a directory")
|
ERROR HY000: File 'MYSQLTEST_VARDIR/tmp/foo/t1.MYD' not found (Errcode: 20 <errmsg>)
|
||||||
flush tables;
|
flush tables;
|
||||||
drop table if exists t1;
|
drop table if exists t1;
|
||||||
create table t1 (a int, b char(16), index (a))
|
create table t1 (a int, b char(16), index (a))
|
||||||
@ -31,7 +31,7 @@ set debug_sync='mi_open_kfile SIGNAL waiting WAIT_FOR run';
|
|||||||
select a from t1;
|
select a from t1;
|
||||||
set debug_sync='now WAIT_FOR waiting';
|
set debug_sync='now WAIT_FOR waiting';
|
||||||
set debug_sync='now SIGNAL run';
|
set debug_sync='now SIGNAL run';
|
||||||
ERROR HY000: Can't find file: './test/t1.MYI' (errno: 20 "Not a directory")
|
ERROR HY000: Can't find file: './test/t1.MYI' (errno: 20 <errmsg>)
|
||||||
flush tables;
|
flush tables;
|
||||||
drop table if exists t1;
|
drop table if exists t1;
|
||||||
drop table mysql.t1;
|
drop table mysql.t1;
|
||||||
|
@ -25,7 +25,7 @@ exec rm -r $MYSQLTEST_VARDIR/tmp/foo;
|
|||||||
exec ln -s $datadir/mysql $MYSQLTEST_VARDIR/tmp/foo;
|
exec ln -s $datadir/mysql $MYSQLTEST_VARDIR/tmp/foo;
|
||||||
set debug_sync='now SIGNAL go';
|
set debug_sync='now SIGNAL go';
|
||||||
connection default;
|
connection default;
|
||||||
replace_regex / '.*\/tmp\// 'MYSQLTEST_VARDIR\/tmp\// /31/20/;
|
replace_regex / '.*\/tmp\// 'MYSQLTEST_VARDIR\/tmp\// /31/20/ /40/20/ /20.*/20 <errmsg>)/;
|
||||||
error 29;
|
error 29;
|
||||||
reap;
|
reap;
|
||||||
flush tables;
|
flush tables;
|
||||||
@ -49,7 +49,7 @@ exec rm -r $MYSQLTEST_VARDIR/tmp/foo;
|
|||||||
exec ln -s $datadir/mysql $MYSQLTEST_VARDIR/tmp/foo;
|
exec ln -s $datadir/mysql $MYSQLTEST_VARDIR/tmp/foo;
|
||||||
set debug_sync='now SIGNAL run';
|
set debug_sync='now SIGNAL run';
|
||||||
connection default;
|
connection default;
|
||||||
replace_regex / '.*\/test\// '.\/test\// /31/20/;
|
replace_regex / '.*\/test\// '.\/test\// /31/20/ /40/20/ /20.*/20 <errmsg>)/;
|
||||||
error ER_FILE_NOT_FOUND;
|
error ER_FILE_NOT_FOUND;
|
||||||
reap;
|
reap;
|
||||||
flush tables;
|
flush tables;
|
||||||
|
@ -3372,6 +3372,7 @@ void handler::print_error(int error, myf errflag)
|
|||||||
break;
|
break;
|
||||||
case ENOENT:
|
case ENOENT:
|
||||||
case ENOTDIR:
|
case ENOTDIR:
|
||||||
|
case ELOOP:
|
||||||
textno=ER_FILE_NOT_FOUND;
|
textno=ER_FILE_NOT_FOUND;
|
||||||
break;
|
break;
|
||||||
case ENOSPC:
|
case ENOSPC:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user