MDEV-4214 : main.partition_rename_longfilename fails on eCryptFS
Adding an include file which checks whether long names are supported
This commit is contained in:
parent
372bc22bfa
commit
b0f5c4dbe1
37
mysql-test/include/support_long_file_names.inc
Normal file
37
mysql-test/include/support_long_file_names.inc
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
--error 0,3
|
||||||
|
--perl
|
||||||
|
my $n = 254 - length($ENV{MYSQLTEST_VARDIR});
|
||||||
|
my $name = $ENV{MYSQLTEST_VARDIR} . '/' . sprintf("%0${n}d", $$);
|
||||||
|
if (!open(LONG_NAME,">$name"))
|
||||||
|
{
|
||||||
|
# We cannot rely either on a particular error code, or error string
|
||||||
|
# to check that we indeed hit "File name too long".
|
||||||
|
# Instead, we will try to create a file with a short name
|
||||||
|
# the same way, in the same location. If it goes all right,
|
||||||
|
# we will assume the problem was with the file name length
|
||||||
|
|
||||||
|
open(SHORT_NAME,">$ENV{MYSQLTEST_VARDIR}/$$") ||
|
||||||
|
# Even a shorter name could not be created, something else is wrong
|
||||||
|
die "Could not create file $ENV{MYSQLTEST_VARDIR}/$$: $!";
|
||||||
|
close(SHORT_NAME);
|
||||||
|
unlink("$ENV{MYSQLTEST_VARDIR}/$$");
|
||||||
|
exit(3);
|
||||||
|
} else {
|
||||||
|
close(LONG_NAME);
|
||||||
|
unlink($name);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# If perl exited with error code 0, the check has passed,
|
||||||
|
# so the calling test will be executed.
|
||||||
|
# If perl exited with error code 3, it will be caught by
|
||||||
|
# --error above, and processed by the check below.
|
||||||
|
# If perl exited with some other error code, something went wrong,
|
||||||
|
# so the test will fail.
|
||||||
|
|
||||||
|
if ($errno)
|
||||||
|
{
|
||||||
|
--skip Long file names are not supported
|
||||||
|
}
|
||||||
|
|
@ -1,4 +1,5 @@
|
|||||||
-- source include/not_windows.inc
|
-- source include/not_windows.inc
|
||||||
|
-- source include/support_long_file_names.inc
|
||||||
-- source include/have_partition.inc
|
-- source include/have_partition.inc
|
||||||
-- source include/not_embedded.inc
|
-- source include/not_embedded.inc
|
||||||
--disable_warnings
|
--disable_warnings
|
||||||
|
Loading…
x
Reference in New Issue
Block a user