mirror of
https://github.com/postgres/postgres.git
synced 2025-04-25 21:42:33 +03:00
Allow recovery tests to run on Windows as an admin user
This is the only test that fails when run as an admin user. The reason is that when Postgres is started via pg_ctl its admin privileges are lowered. However, this test called 'postgres -D datadir' directly, resulting in a failure. Replace that by calling pg_ctl and then checking the result for the expected failure, and the logfile for the expected error message.
This commit is contained in:
parent
72c7c4e386
commit
4eff1e9f0b
@ -132,6 +132,11 @@ my $node_standby = get_new_node('standby_7');
|
||||
$node_standby->init_from_backup($node_master, 'my_backup', has_restoring => 1);
|
||||
$node_standby->append_conf('postgresql.conf', "recovery_target_name = '$recovery_name'
|
||||
recovery_target_time = '$recovery_time'");
|
||||
command_fails_like(['postgres', '-D', $node_standby->data_dir],
|
||||
qr/multiple recovery targets specified/,
|
||||
'multiple conflicting settings');
|
||||
|
||||
my $res = run_log(['pg_ctl', '-D', $node_standby->data_dir,
|
||||
'-l', $node_standby->logfile, 'start']);
|
||||
ok(! $res, 'invalid recovery startup fails');
|
||||
|
||||
my $logfile = slurp_file($node_standby->logfile());
|
||||
ok ($logfile =~ qr/multiple recovery targets specified/,
|
||||
'multiple conflicting settings');
|
||||
|
Loading…
x
Reference in New Issue
Block a user