merge Brian's changes

This commit is contained in:
baron@percona.com
2012-02-02 20:33:23 -05:00
2 changed files with 36 additions and 20 deletions

View File

@@ -1550,8 +1550,11 @@ use List::Util qw( max first );
use ReadKeyMini qw( GetTerminalSize );
my (undef, $max_lines) = GetTerminalSize();
my $max_lines;
BEGIN {
(undef, $max_lines) = GetTerminalSize();
$Diskstats::printed_lines = $max_lines;
}
my $diskstat_colno_for;
BEGIN {
@@ -2139,11 +2142,12 @@ sub _calc_read_stats {
reads_sec => $delta_for->{reads} / $elapsed,
read_requests => $delta_for->{reads_merged} + $delta_for->{reads},
mbytes_read_sec => $delta_for->{read_kbs} / $elapsed / 1024,
ios_read_sec => $delta_for->{ms_spent_reading} / 1000,
read_conc => $delta_for->{ms_spent_reading} /
$elapsed / 1000 / $devs_in_group,
);
$read_stats{ios_read_sec} = 0; # TODO
if ( $delta_for->{reads} > 0 ) {
$read_stats{read_rtime} =
$delta_for->{ms_spent_reading} / $delta_for->{reads};
@@ -2176,12 +2180,13 @@ sub _calc_write_stats {
writes_sec => $delta_for->{writes} / $elapsed,
write_requests => $delta_for->{writes_merged} + $delta_for->{writes},
mbytes_written_sec => $delta_for->{written_kbs} / $elapsed / 1024,
ios_written_sec => $delta_for->{ms_spent_writing} / 1000,
write_conc => $delta_for->{ms_spent_writing} /
$elapsed / 1000 /
$devs_in_group,
);
$write_stats{ios_written_sec} = 0; # TODO
if ( $delta_for->{writes} > 0 ) {
$write_stats{write_rtime} =
$delta_for->{ms_spent_writing} / $delta_for->{writes};
@@ -2399,6 +2404,9 @@ sub print_deltas {
my @stats = $self->_calc_deltas();
$Diskstats::printed_lines = $max_lines
unless defined $Diskstats::printed_lines;
if ( $self->{space_samples} && @stats && @stats > 1
&& !$Diskstats::last_was_header ) {
print "\n";
@@ -2417,9 +2425,9 @@ sub print_deltas {
foreach my $stat ( @stats ) {
$self->$rows_method( $format, $cols, $stat );
}
$Diskstats::printed_lines = $Diskstats::printed_lines <= 0
? $max_lines
: $Diskstats::printed_lines;
$Diskstats::printed_lines = $max_lines
if $Diskstats::printed_lines <= 0;
}
sub compute_line_ts {

View File

@@ -34,8 +34,11 @@ use List::Util qw( max first );
use ReadKeyMini qw( GetTerminalSize );
my (undef, $max_lines) = GetTerminalSize();
my $max_lines;
BEGIN {
(undef, $max_lines) = GetTerminalSize();
$Diskstats::printed_lines = $max_lines;
}
my $diskstat_colno_for;
BEGIN {
@@ -690,11 +693,12 @@ sub _calc_read_stats {
reads_sec => $delta_for->{reads} / $elapsed,
read_requests => $delta_for->{reads_merged} + $delta_for->{reads},
mbytes_read_sec => $delta_for->{read_kbs} / $elapsed / 1024,
ios_read_sec => $delta_for->{ms_spent_reading} / 1000,
read_conc => $delta_for->{ms_spent_reading} /
$elapsed / 1000 / $devs_in_group,
);
$read_stats{ios_read_sec} = 0; # TODO
if ( $delta_for->{reads} > 0 ) {
$read_stats{read_rtime} =
$delta_for->{ms_spent_reading} / $delta_for->{reads};
@@ -727,12 +731,13 @@ sub _calc_write_stats {
writes_sec => $delta_for->{writes} / $elapsed,
write_requests => $delta_for->{writes_merged} + $delta_for->{writes},
mbytes_written_sec => $delta_for->{written_kbs} / $elapsed / 1024,
ios_written_sec => $delta_for->{ms_spent_writing} / 1000,
write_conc => $delta_for->{ms_spent_writing} /
$elapsed / 1000 /
$devs_in_group,
);
$write_stats{ios_written_sec} = 0; # TODO
if ( $delta_for->{writes} > 0 ) {
$write_stats{write_rtime} =
$delta_for->{ms_spent_writing} / $delta_for->{writes};
@@ -975,6 +980,9 @@ sub print_deltas {
my @stats = $self->_calc_deltas();
$Diskstats::printed_lines = $max_lines
unless defined $Diskstats::printed_lines;
if ( $self->{space_samples} && @stats && @stats > 1
&& !$Diskstats::last_was_header ) {
# Print an empty line before the rows if we have more
@@ -996,9 +1004,9 @@ sub print_deltas {
foreach my $stat ( @stats ) {
$self->$rows_method( $format, $cols, $stat );
}
$Diskstats::printed_lines = $Diskstats::printed_lines <= 0
? $max_lines
: $Diskstats::printed_lines;
$Diskstats::printed_lines = $max_lines
if $Diskstats::printed_lines <= 0;
}
sub compute_line_ts {