Improve pg_basebackup long file name test Windows robustness
Creation of a file with a very long name can create problems on Windows due to its file path limits. Work around that by creating the file via a symlink with a shorter name. Error displayed by buildfarm animal fairywren.o Backpatch to all live branches
This commit is contained in:
parent
a4cfeeca5a
commit
9436535b08
@ -311,8 +311,12 @@ $node->command_fails(
|
||||
'-T with invalid format fails');
|
||||
|
||||
# Tar format doesn't support filenames longer than 100 bytes.
|
||||
# Create the test file via a short name directory so it doesn't blow the
|
||||
# Windows path limit.
|
||||
my $lftmp = PostgreSQL::Test::Utils::tempdir_short;
|
||||
dir_symlink "$pgdata", "$lftmp/pgdata";
|
||||
my $superlongname = "superlongname_" . ("x" x 100);
|
||||
my $superlongpath = "$pgdata/$superlongname";
|
||||
my $superlongpath = "$lftmp/pgdata/$superlongname";
|
||||
|
||||
open my $file, '>', "$superlongpath"
|
||||
or die "unable to create file $superlongpath";
|
||||
@ -320,7 +324,7 @@ close $file;
|
||||
$node->command_fails(
|
||||
[ @pg_basebackup_defs, '-D', "$tempdir/tarbackup_l1", '-Ft' ],
|
||||
'pg_basebackup tar with long name fails');
|
||||
unlink "$pgdata/$superlongname";
|
||||
unlink "$superlongpath";
|
||||
|
||||
# The following tests are for symlinks.
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user