Fix pgbench TAP test to work in VPATH builds.

Previously, it'd try to create log files under the source directory
not the build directory.  This fell over if the source isn't writable
by the building user.

Fabien Coelho

Discussion: https://postgr.es/m/alpine.DEB.2.20.1801101038340.2283@lancre
This commit is contained in:
Tom Lane 2018-03-02 14:48:26 -05:00
parent fd1a421fe6
commit e94f2bc809

View File

@ -605,24 +605,26 @@ sub check_pgbench_logs
ok(unlink(@logs), "remove log files");
}
my $bdir = $node->basedir;
# with sampling rate
pgbench(
'-n -S -t 50 -c 2 --log --log-prefix=001_pgbench_log_2 --sampling-rate=0.5',
"-n -S -t 50 -c 2 --log --log-prefix=$bdir/001_pgbench_log_2 --sampling-rate=0.5",
0,
[ qr{select only}, qr{processed: 100/100} ],
[qr{^$}],
'pgbench logs');
check_pgbench_logs('001_pgbench_log_2', 1, 8, 92,
check_pgbench_logs("$bdir/001_pgbench_log_2", 1, 8, 92,
qr{^0 \d{1,2} \d+ \d \d+ \d+$});
# check log file in some detail
pgbench(
'-n -b se -t 10 -l --log-prefix=001_pgbench_log_3',
"-n -b se -t 10 -l --log-prefix=$bdir/001_pgbench_log_3",
0, [ qr{select only}, qr{processed: 10/10} ],
[qr{^$}], 'pgbench logs contents');
check_pgbench_logs('001_pgbench_log_3', 1, 10, 10,
check_pgbench_logs("$bdir/001_pgbench_log_3", 1, 10, 10,
qr{^\d \d{1,2} \d+ \d \d+ \d+$});
# done