aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/bin/pg_validatebackup/t/003_corruption.pl10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/bin/pg_validatebackup/t/003_corruption.pl b/src/bin/pg_validatebackup/t/003_corruption.pl
index 416bc9194f0..7a09d02e6c7 100644
--- a/src/bin/pg_validatebackup/t/003_corruption.pl
+++ b/src/bin/pg_validatebackup/t/003_corruption.pl
@@ -80,6 +80,7 @@ my @scenario = (
{
'name' => 'open_directory_fails',
'mutilate' => \&mutilate_open_directory_fails,
+ 'cleanup' => \&cleanup_open_directory_fails,
'fails_like' => qr/could not open directory/,
'skip_on_windows' => 1
},
@@ -245,6 +246,15 @@ sub mutilate_open_directory_fails
return;
}
+# restore permissions on the unreadable directory we created.
+sub cleanup_open_directory_fails
+{
+ my ($backup_path) = @_;
+ my $pathname = "$backup_path/pg_subtrans";
+ chmod(0700, $pathname) || die "chmod $pathname: $!";
+ return;
+}
+
# Create a directory that can't be searched. (This is skipped on Windows.)
sub mutilate_search_directory_fails
{