mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-09-09 07:30:02 +00:00
58 lines
1.7 KiB
Perl
58 lines
1.7 KiB
Perl
#!/usr/bin/env perl
|
|
|
|
BEGIN {
|
|
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
|
|
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
|
|
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
|
|
};
|
|
|
|
use strict;
|
|
use warnings FATAL => 'all';
|
|
use English qw(-no_match_vars);
|
|
use Test::More tests => 3;
|
|
|
|
use PerconaTest;
|
|
require "$trunk/bin/pt-query-digest";
|
|
|
|
my $output;
|
|
|
|
# Test --continue-on-error.
|
|
$output = `$trunk/bin/pt-query-digest --no-continue-on-error --type tcpdump $trunk/t/pt-query-digest/samples/bad_tcpdump.txt 2>&1`;
|
|
unlike(
|
|
$output,
|
|
qr/Query 1/,
|
|
'Does not continue on error with --no-continue-on-error'
|
|
);
|
|
|
|
$output = `$trunk/bin/pt-query-digest --type tcpdump $trunk/t/pt-query-digest/samples/bad_tcpdump.txt 2>&1`;
|
|
like(
|
|
$output,
|
|
qr/paris in the the spring/,
|
|
'Continues on error by default'
|
|
);
|
|
|
|
# #############################################################################
|
|
# Infinite loop in pt-query-digest if a report crashe
|
|
# https://bugs.launchpad.net/percona-toolkit/+bug/888114
|
|
# #############################################################################
|
|
|
|
# This bug is due to the fact that --continue-on-error is on by default.
|
|
# To reproduce the problem, we must intentionally crash pt-query-digest
|
|
# in the right place, which means we're using another bug:a
|
|
$output = output(
|
|
sub { pt_query_digest::main("$trunk/t/lib/samples/slowlogs/slow002.txt",
|
|
"--expected-range", "'',''") },
|
|
stderr => 1,
|
|
);
|
|
|
|
like(
|
|
$output,
|
|
qr/Argument \S+ isn't numeric/,
|
|
"Report crashed, but no infinite loop (bug 888114)"
|
|
);
|
|
|
|
# #############################################################################
|
|
# Done.
|
|
# #############################################################################
|
|
exit;
|