From 16054abaae85fbbc8961b513e38e623b22c5cf66 Mon Sep 17 00:00:00 2001 From: Robert Martin-Legene <robert@nic.ar> Date: Mon, 13 May 2019 13:07:15 -0300 Subject: [PATCH] sealerwatch da una vista del estado actual mas rapido --- bin/sealerwatch.pl | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/bin/sealerwatch.pl b/bin/sealerwatch.pl index c3c77ea..12d11eb 100755 --- a/bin/sealerwatch.pl +++ b/bin/sealerwatch.pl @@ -329,13 +329,18 @@ chdir "$ENV{BFAHOME}" or die $!; my $number = shift || 'latest'; my $tools = tools->new; my %cache; -my $lastblock; +my $latestvalidblock; my %signers; +# If we started with 'latest' then subtract 100, +# so we get an updated list of recent signers faster. +my $subtract = $number eq 'latest' ? 100 : 0; $libbfa = libbfa->new(); my $block = block->new( $libbfa )->get( $number ); die if not defined $block; $number = $block->number; +my $run_to = $number; +$number -= $subtract; print ansi::CUP().ansi::ED(); sub determine_colour @@ -409,14 +414,12 @@ sub presentation_top while ( defined $block || sleep 1 ) { my $parent = undef; - $block = block->new( $libbfa )->get( $number ); - if ( not defined $block ) - { - presentation_top( $lastblock ); - next; - } + my $prospect = block->new( $libbfa )->get( $number ); + $block = $prospect + if defined $prospect; presentation_top( $block ); - $lastblock = $block; + next + if not defined $prospect; $cache{$number}{'block'} = $block; $number = $block->number; if ( exists $cache{ $number - 1 }{'block'} ) @@ -488,5 +491,6 @@ while ( defined $block || sleep 1 ) print ansi::ED(0), ansi::CUP($maxy, 1); # $number = $block->number + 1; - select( undef, undef,undef, 0.2 ); + select( undef, undef,undef, 0.1 ) + if $number >= $run_to; } -- GitLab