mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-09-10 13:11:32 +00:00
Fix Runtime.t and update it in all tools.
This commit is contained in:
@@ -4059,7 +4059,7 @@ use constant PTDEBUG => $ENV{PTDEBUG} || 0;
|
||||
|
||||
sub new {
|
||||
my ( $class, %args ) = @_;
|
||||
my @required_args = qw(run_time now);
|
||||
my @required_args = qw(now);
|
||||
foreach my $arg ( @required_args ) {
|
||||
die "I need a $arg argument" unless exists $args{$arg};
|
||||
}
|
||||
|
@@ -3569,7 +3569,7 @@ use constant PTDEBUG => $ENV{PTDEBUG} || 0;
|
||||
|
||||
sub new {
|
||||
my ( $class, %args ) = @_;
|
||||
my @required_args = qw(run_time now);
|
||||
my @required_args = qw(now);
|
||||
foreach my $arg ( @required_args ) {
|
||||
die "I need a $arg argument" unless exists $args{$arg};
|
||||
}
|
||||
|
@@ -10803,15 +10803,20 @@ sub new {
|
||||
my ( $class, %args ) = @_;
|
||||
my @required_args = qw(now);
|
||||
foreach my $arg ( @required_args ) {
|
||||
die "I need a $arg argument" unless $args{$arg};
|
||||
die "I need a $arg argument" unless exists $args{$arg};
|
||||
}
|
||||
|
||||
if ( ($args{runtime} || 0) < 0 ) {
|
||||
die "runtime argument must be greater than zero"
|
||||
my $run_time = $args{run_time};
|
||||
if ( defined $run_time ) {
|
||||
die "run_time must be > 0" if $run_time <= 0;
|
||||
}
|
||||
|
||||
my $now = $args{now};
|
||||
die "now must be a callback" unless ref $now eq 'CODE';
|
||||
|
||||
my $self = {
|
||||
%args,
|
||||
run_time => $run_time,
|
||||
now => $now,
|
||||
start_time => undef,
|
||||
end_time => undef,
|
||||
time_left => undef,
|
||||
@@ -10838,11 +10843,11 @@ sub time_left {
|
||||
|
||||
return unless defined $now;
|
||||
|
||||
my $runtime = $self->{runtime};
|
||||
return unless defined $runtime;
|
||||
my $run_time = $self->{run_time};
|
||||
return unless defined $run_time;
|
||||
|
||||
if ( !$self->{end_time} ) {
|
||||
$self->{end_time} = $now + $runtime;
|
||||
$self->{end_time} = $now + $run_time;
|
||||
PTDEBUG && _d("End time:", $self->{end_time});
|
||||
}
|
||||
|
||||
@@ -10855,7 +10860,7 @@ sub have_time {
|
||||
my ( $self, %args ) = @_;
|
||||
my $time_left = $self->time_left(%args);
|
||||
return 1 if !defined $time_left; # run forever
|
||||
return $time_left <= 0 ? 0 : 1; # <=0s means runtime has elapsed
|
||||
return $time_left <= 0 ? 0 : 1; # <=0s means run time has elapsed
|
||||
}
|
||||
|
||||
sub time_elapsed {
|
||||
@@ -10881,7 +10886,7 @@ sub reset {
|
||||
$self->{end_time} = undef;
|
||||
$self->{time_left} = undef;
|
||||
$self->{stop} = 0;
|
||||
PTDEBUG && _d("Reset runtime");
|
||||
PTDEBUG && _d("Reset run time");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -12892,8 +12897,8 @@ sub main {
|
||||
$now_callback = sub { return; };
|
||||
}
|
||||
$pipeline_data->{Runtime} = new Runtime(
|
||||
now => $now_callback,
|
||||
runtime => $o->get('run-time'),
|
||||
now => $now_callback,
|
||||
run_time => $o->get('run-time'),
|
||||
);
|
||||
|
||||
$pipeline->add(
|
||||
|
@@ -8430,15 +8430,20 @@ sub new {
|
||||
my ( $class, %args ) = @_;
|
||||
my @required_args = qw(now);
|
||||
foreach my $arg ( @required_args ) {
|
||||
die "I need a $arg argument" unless $args{$arg};
|
||||
die "I need a $arg argument" unless exists $args{$arg};
|
||||
}
|
||||
|
||||
if ( ($args{runtime} || 0) < 0 ) {
|
||||
die "runtime argument must be greater than zero"
|
||||
my $run_time = $args{run_time};
|
||||
if ( defined $run_time ) {
|
||||
die "run_time must be > 0" if $run_time <= 0;
|
||||
}
|
||||
|
||||
my $now = $args{now};
|
||||
die "now must be a callback" unless ref $now eq 'CODE';
|
||||
|
||||
my $self = {
|
||||
%args,
|
||||
run_time => $run_time,
|
||||
now => $now,
|
||||
start_time => undef,
|
||||
end_time => undef,
|
||||
time_left => undef,
|
||||
@@ -8465,11 +8470,11 @@ sub time_left {
|
||||
|
||||
return unless defined $now;
|
||||
|
||||
my $runtime = $self->{runtime};
|
||||
return unless defined $runtime;
|
||||
my $run_time = $self->{run_time};
|
||||
return unless defined $run_time;
|
||||
|
||||
if ( !$self->{end_time} ) {
|
||||
$self->{end_time} = $now + $runtime;
|
||||
$self->{end_time} = $now + $run_time;
|
||||
PTDEBUG && _d("End time:", $self->{end_time});
|
||||
}
|
||||
|
||||
@@ -8482,7 +8487,7 @@ sub have_time {
|
||||
my ( $self, %args ) = @_;
|
||||
my $time_left = $self->time_left(%args);
|
||||
return 1 if !defined $time_left; # run forever
|
||||
return $time_left <= 0 ? 0 : 1; # <=0s means runtime has elapsed
|
||||
return $time_left <= 0 ? 0 : 1; # <=0s means run time has elapsed
|
||||
}
|
||||
|
||||
sub time_elapsed {
|
||||
@@ -8508,7 +8513,7 @@ sub reset {
|
||||
$self->{end_time} = undef;
|
||||
$self->{time_left} = undef;
|
||||
$self->{stop} = 0;
|
||||
PTDEBUG && _d("Reset runtime");
|
||||
PTDEBUG && _d("Reset run time");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -8821,8 +8826,8 @@ sub main {
|
||||
my $have_time;
|
||||
if ( my $run_time = $o->get('run-time') ) {
|
||||
my $rt = Runtime->new(
|
||||
now => sub { return time; },
|
||||
runtime => $run_time,
|
||||
now => sub { return time; },
|
||||
run_time => $run_time,
|
||||
);
|
||||
$have_time = sub { return $rt->have_time(); };
|
||||
}
|
||||
|
@@ -5059,15 +5059,20 @@ sub new {
|
||||
my ( $class, %args ) = @_;
|
||||
my @required_args = qw(now);
|
||||
foreach my $arg ( @required_args ) {
|
||||
die "I need a $arg argument" unless $args{$arg};
|
||||
die "I need a $arg argument" unless exists $args{$arg};
|
||||
}
|
||||
|
||||
if ( ($args{runtime} || 0) < 0 ) {
|
||||
die "runtime argument must be greater than zero"
|
||||
my $run_time = $args{run_time};
|
||||
if ( defined $run_time ) {
|
||||
die "run_time must be > 0" if $run_time <= 0;
|
||||
}
|
||||
|
||||
my $now = $args{now};
|
||||
die "now must be a callback" unless ref $now eq 'CODE';
|
||||
|
||||
my $self = {
|
||||
%args,
|
||||
run_time => $run_time,
|
||||
now => $now,
|
||||
start_time => undef,
|
||||
end_time => undef,
|
||||
time_left => undef,
|
||||
@@ -5094,11 +5099,11 @@ sub time_left {
|
||||
|
||||
return unless defined $now;
|
||||
|
||||
my $runtime = $self->{runtime};
|
||||
return unless defined $runtime;
|
||||
my $run_time = $self->{run_time};
|
||||
return unless defined $run_time;
|
||||
|
||||
if ( !$self->{end_time} ) {
|
||||
$self->{end_time} = $now + $runtime;
|
||||
$self->{end_time} = $now + $run_time;
|
||||
PTDEBUG && _d("End time:", $self->{end_time});
|
||||
}
|
||||
|
||||
@@ -5111,7 +5116,7 @@ sub have_time {
|
||||
my ( $self, %args ) = @_;
|
||||
my $time_left = $self->time_left(%args);
|
||||
return 1 if !defined $time_left; # run forever
|
||||
return $time_left <= 0 ? 0 : 1; # <=0s means runtime has elapsed
|
||||
return $time_left <= 0 ? 0 : 1; # <=0s means run time has elapsed
|
||||
}
|
||||
|
||||
sub time_elapsed {
|
||||
@@ -5137,7 +5142,7 @@ sub reset {
|
||||
$self->{end_time} = undef;
|
||||
$self->{time_left} = undef;
|
||||
$self->{stop} = 0;
|
||||
PTDEBUG && _d("Reset runtime");
|
||||
PTDEBUG && _d("Reset run time");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -6613,8 +6618,8 @@ sub main {
|
||||
|
||||
{ # terminator
|
||||
my $runtime = new Runtime(
|
||||
now => sub { return time },
|
||||
runtime => $o->get('run-time'),
|
||||
now => sub { return time },
|
||||
run_time => $o->get('run-time'),
|
||||
);
|
||||
|
||||
$pipeline->add(
|
||||
|
@@ -27,7 +27,7 @@ use constant PTDEBUG => $ENV{PTDEBUG} || 0;
|
||||
|
||||
sub new {
|
||||
my ( $class, %args ) = @_;
|
||||
my @required_args = qw(run_time now);
|
||||
my @required_args = qw(now);
|
||||
foreach my $arg ( @required_args ) {
|
||||
die "I need a $arg argument" unless exists $args{$arg};
|
||||
}
|
||||
|
@@ -20,7 +20,7 @@ use Runtime;
|
||||
|
||||
my $runtime = new Runtime(
|
||||
now => sub { return time; },
|
||||
runtime => 3,
|
||||
run_time => 3,
|
||||
);
|
||||
|
||||
is(
|
||||
@@ -91,7 +91,7 @@ is(
|
||||
|
||||
$runtime = new Runtime(
|
||||
now => sub { return time; },
|
||||
# runtime => undef, # forever
|
||||
# run_time => undef, # forever
|
||||
);
|
||||
|
||||
is(
|
||||
@@ -125,7 +125,7 @@ is(
|
||||
|
||||
$runtime = new Runtime(
|
||||
now => sub { return time; },
|
||||
runtime => 3,
|
||||
run_time => 3,
|
||||
);
|
||||
|
||||
is(
|
||||
@@ -149,7 +149,7 @@ is(
|
||||
my @time = qw(0 3 7 9);
|
||||
$runtime = new Runtime(
|
||||
now => sub { return shift @time; },
|
||||
runtime => 8,
|
||||
run_time => 8,
|
||||
);
|
||||
|
||||
is(
|
||||
|
Reference in New Issue
Block a user