File tree Expand file tree Collapse file tree 5 files changed +29
-26
lines changed
subvt-persistence/src/postgres/network/report
subvt-plotter/src/plotlib/components
subvt-session-validator-performance-updater/src
subvt-substrate-client/src Expand file tree Collapse file tree 5 files changed +29
-26
lines changed Original file line number Diff line number Diff line change @@ -32,15 +32,16 @@ impl PostgreSQLNetworkStorage {
3232 . bind ( era_index as i64 )
3333 . fetch_one ( & self . connection_pool )
3434 . await ?;
35- let maybe_era = if era_report. 0 . is_some ( ) & era_report. 1 . is_some ( ) {
36- Some ( Era {
37- index : era_index,
38- start_timestamp : era_report. 0 . unwrap ( ) as u64 ,
39- end_timestamp : era_report. 1 . unwrap ( ) as u64 ,
40- } )
41- } else {
42- None
43- } ;
35+ let maybe_era =
36+ if let ( Some ( era_report_0) , Some ( era_report_1) ) = ( era_report. 0 , era_report. 1 ) {
37+ Some ( Era {
38+ index : era_index,
39+ start_timestamp : era_report_0 as u64 ,
40+ end_timestamp : era_report_1 as u64 ,
41+ } )
42+ } else {
43+ None
44+ } ;
4445 if let Some ( era) = maybe_era {
4546 Ok ( Some ( EraReport {
4647 era,
Original file line number Diff line number Diff line change @@ -58,11 +58,14 @@ impl PostgreSQLNetworkStorage {
5858 . bind ( validator_account_id_hex_string)
5959 . fetch_one ( & self . connection_pool )
6060 . await ?;
61- let maybe_era = if era_validator_report. 0 . is_some ( ) & era_validator_report. 1 . is_some ( ) {
61+
62+ let maybe_era = if let ( Some ( era_validator_report_0) , Some ( era_validator_report_1) ) =
63+ ( era_validator_report. 0 , era_validator_report. 1 )
64+ {
6265 Some ( Era {
6366 index : era_index,
64- start_timestamp : era_validator_report . 0 . unwrap ( ) as u64 ,
65- end_timestamp : era_validator_report . 1 . unwrap ( ) as u64 ,
67+ start_timestamp : era_validator_report_0 as u64 ,
68+ end_timestamp : era_validator_report_1 as u64 ,
6669 } )
6770 } else {
6871 None
Original file line number Diff line number Diff line change @@ -75,7 +75,7 @@ impl AxisTick {
7575
7676 /// Render the axis tick to svg.
7777 pub fn to_svg ( & self ) -> Result < Group , String > {
78- let formatted_label = if self . label_format . is_some ( ) {
78+ let formatted_label = if let Some ( label_format ) = & self . label_format {
7979 let formatter = NumberFormat :: new ( ) ;
8080 formatter
8181 . format (
Original file line number Diff line number Diff line change @@ -86,11 +86,10 @@ impl SessionValidatorPerformanceUpdater {
8686 let attestation_count = ( votes_summary. implicit + votes_summary. explicit ) as u64 ;
8787 let total_attestation_slots =
8888 ( votes_summary. implicit + votes_summary. explicit + votes_summary. missed ) as u64 ;
89- let attestations_per_billion = if total_attestation_slots > 0 {
90- attestation_count * 1_000_000_000 / total_attestation_slots
91- } else {
92- 0
93- } ;
89+
90+ let attestations_per_billion = ( attestation_count * 1_000_000_000 )
91+ . checked_div ( total_attestation_slots)
92+ . unwrap_or ( 0 ) ;
9493 performance. attestations_per_billion = Some ( attestations_per_billion as u32 ) ;
9594 }
9695 session_validator_performances. push ( performance) ;
Original file line number Diff line number Diff line change @@ -927,21 +927,21 @@ impl SubstrateClient {
927927 let average_stake = era_stakers. average_stake ( ) ;
928928 for validator in validator_map. values_mut ( ) {
929929 validator. return_rate_per_billion = if validator. is_active {
930- if validator. validator_stake . is_none ( ) {
930+ if let Some ( validator_stake) = validator. validator_stake . as_ref ( ) {
931+ let return_rate = ( average_stake * total_return_rate_per_billion
932+ / validator_stake. total_stake )
933+ * ( 1_000_000_000
934+ - ( validator. preferences . commission_per_billion as u128 ) )
935+ / 1_000_000_000 ;
936+ Some ( return_rate as u32 )
937+ } else {
931938 validator. validator_stake = Some ( ValidatorStake {
932939 account : validator. account . clone ( ) ,
933940 self_stake : 0 ,
934941 total_stake : 0 ,
935942 nominators : Vec :: new ( ) ,
936943 } ) ;
937944 Some ( 0 )
938- } else {
939- let return_rate = ( average_stake * total_return_rate_per_billion
940- / validator. validator_stake . as_ref ( ) . unwrap ( ) . total_stake )
941- * ( 1_000_000_000
942- - ( validator. preferences . commission_per_billion as u128 ) )
943- / 1_000_000_000 ;
944- Some ( return_rate as u32 )
945945 }
946946 } else {
947947 None
You can’t perform that action at this time.
0 commit comments