mirror of
https://github.com/postgres/postgres.git
synced 2025-04-27 22:56:53 +03:00
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
c8987ea90c
commit
83ed4de20f
@ -203,8 +203,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";
|
||||
@ -212,7 +216,7 @@ close $file;
|
||||
$node->command_fails(
|
||||
[ 'pg_basebackup', '-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