@@ -408,13 +408,8 @@ impl Signer {
408
408
block_response,
409
409
sortition_state,
410
410
) ,
411
- SignerMessage :: StateMachineUpdate ( update) => {
412
- self . handle_state_machine_update (
413
- signer_public_key,
414
- update,
415
- received_time,
416
- ) ;
417
- }
411
+ SignerMessage :: StateMachineUpdate ( update) => self
412
+ . handle_state_machine_update ( signer_public_key, update, received_time) ,
418
413
_ => { }
419
414
}
420
415
}
@@ -671,16 +666,30 @@ impl Signer {
671
666
/// The actual `send_block_response` implementation. Declared so that we do
672
667
/// not need to duplicate in testing.
673
668
fn impl_send_block_response ( & mut self , block_response : BlockResponse ) {
674
- let res = self
669
+ info ! (
670
+ "{self}: Broadcasting a block response to stacks node: {block_response:?}" ;
671
+ ) ;
672
+ let accepted = matches ! ( block_response, BlockResponse :: Accepted ( ..) ) ;
673
+ let block_hash = block_response. get_signer_signature_hash ( ) ;
674
+ match self
675
675
. stackerdb
676
- . send_message_with_retry :: < SignerMessage > ( block_response. clone ( ) . into ( ) ) ;
677
- match res {
678
- Err ( e) => warn ! ( "{self}: Failed to send block rejection to stacker-db: {e:?}" ) ,
679
- Ok ( ack) if !ack. accepted => warn ! (
680
- "{self}: Block rejection not accepted by stacker-db: {:?}" ,
681
- ack. reason
682
- ) ,
683
- Ok ( _) => debug ! ( "{self}: Block rejection accepted by stacker-db" ) ,
676
+ . send_message_with_retry :: < SignerMessage > ( block_response. into ( ) )
677
+ {
678
+ Ok ( ack) => {
679
+ if !ack. accepted {
680
+ warn ! (
681
+ "{self}: Block response not accepted by stacker-db: {:?}" ,
682
+ ack. reason
683
+ ) ;
684
+ }
685
+ crate :: monitoring:: actions:: increment_block_responses_sent ( accepted) ;
686
+ if let Ok ( Some ( block_info) ) = self . signer_db . block_lookup ( & block_hash) {
687
+ crate :: monitoring:: actions:: record_block_response_latency ( & block_info. block ) ;
688
+ }
689
+ }
690
+ Err ( e) => {
691
+ warn ! ( "{self}: Failed to send block response to stacker-db: {e:?}" , ) ;
692
+ }
684
693
}
685
694
}
686
695
@@ -833,7 +842,6 @@ impl Signer {
833
842
834
843
if let Some ( block_response) = block_response {
835
844
// We know proposal is invalid. Send rejection message, do not do further validation and do not store it.
836
- debug ! ( "{self}: Broadcasting a block response to stacks node: {block_response:?}" ) ;
837
845
self . send_block_response ( block_response) ;
838
846
} else {
839
847
// Just in case check if the last block validation submission timed out.
@@ -888,19 +896,7 @@ impl Signer {
888
896
return ;
889
897
} ;
890
898
891
- // Submit a proposal response to the .signers contract for miners
892
- debug ! ( "{self}: Broadcasting a block response to stacks node: {block_response:?}" ) ;
893
-
894
- let accepted = matches ! ( block_response, BlockResponse :: Accepted ( ..) ) ;
895
- if let Err ( e) = self
896
- . stackerdb
897
- . send_message_with_retry :: < SignerMessage > ( block_response. into ( ) )
898
- {
899
- warn ! ( "{self}: Failed to send block response to stacker-db: {e:?}" ) ;
900
- } else {
901
- crate :: monitoring:: actions:: increment_block_responses_sent ( accepted) ;
902
- crate :: monitoring:: actions:: record_block_response_latency ( & block_info. block ) ;
903
- }
899
+ self . send_block_response ( block_response) ;
904
900
}
905
901
906
902
/// Handle block response messages from a signer
@@ -1036,21 +1032,7 @@ impl Signer {
1036
1032
warn ! ( "{self}: Failed to mark block as locally rejected: {e:?}" ) ;
1037
1033
}
1038
1034
} ;
1039
- debug ! ( "{self}: Broadcasting a block response to stacks node: {block_response:?}" ) ;
1040
- let res = self
1041
- . stackerdb
1042
- . send_message_with_retry :: < SignerMessage > ( block_response. into ( ) ) ;
1043
-
1044
- crate :: monitoring:: actions:: record_block_response_latency ( & block_info. block ) ;
1045
-
1046
- match res {
1047
- Err ( e) => warn ! ( "{self}: Failed to send block rejection to stacker-db: {e:?}" ) ,
1048
- Ok ( ack) if !ack. accepted => warn ! (
1049
- "{self}: Block rejection not accepted by stacker-db: {:?}" ,
1050
- ack. reason
1051
- ) ,
1052
- Ok ( _) => debug ! ( "{self}: Block rejection accepted by stacker-db" ) ,
1053
- }
1035
+ self . send_block_response ( block_response) ;
1054
1036
self . signer_db
1055
1037
. insert_block ( & block_info)
1056
1038
. unwrap_or_else ( |e| self . handle_insert_block_error ( e) ) ;
@@ -1157,30 +1139,7 @@ impl Signer {
1157
1139
. unwrap_or_else ( |e| warn ! ( "{self}: Failed to remove pending block validation: {e:?}" ) ) ;
1158
1140
1159
1141
if let Some ( response) = block_response {
1160
- // Submit a proposal response to the .signers contract for miners
1161
- info ! (
1162
- "{self}: Broadcasting a block response to stacks node: {response:?}" ;
1163
- ) ;
1164
- let accepted = matches ! ( response, BlockResponse :: Accepted ( ..) ) ;
1165
- match self
1166
- . stackerdb
1167
- . send_message_with_retry :: < SignerMessage > ( response. into ( ) )
1168
- {
1169
- Ok ( _) => {
1170
- crate :: monitoring:: actions:: increment_block_responses_sent ( accepted) ;
1171
- if let Ok ( Some ( block_info) ) = self
1172
- . signer_db
1173
- . block_lookup ( & block_validate_response. signer_signature_hash ( ) )
1174
- {
1175
- crate :: monitoring:: actions:: record_block_response_latency (
1176
- & block_info. block ,
1177
- ) ;
1178
- }
1179
- }
1180
- Err ( e) => {
1181
- warn ! ( "{self}: Failed to send block rejection to stacker-db: {e:?}" , ) ;
1182
- }
1183
- }
1142
+ self . send_block_response ( response) ;
1184
1143
} ;
1185
1144
1186
1145
// Check if there is a pending block validation that we need to submit to the node
@@ -1273,21 +1232,7 @@ impl Signer {
1273
1232
warn ! ( "{self}: Failed to mark block as locally rejected: {e:?}" ) ;
1274
1233
}
1275
1234
} ;
1276
- debug ! ( "{self}: Broadcasting a block response to stacks node: {rejection:?}" ) ;
1277
- let res = self
1278
- . stackerdb
1279
- . send_message_with_retry :: < SignerMessage > ( rejection. into ( ) ) ;
1280
-
1281
- crate :: monitoring:: actions:: record_block_response_latency ( & block_info. block ) ;
1282
-
1283
- match res {
1284
- Err ( e) => warn ! ( "{self}: Failed to send block rejection to stacker-db: {e:?}" ) ,
1285
- Ok ( ack) if !ack. accepted => warn ! (
1286
- "{self}: Block rejection not accepted by stacker-db: {:?}" ,
1287
- ack. reason
1288
- ) ,
1289
- Ok ( _) => debug ! ( "{self}: Block rejection accepted by stacker-db" ) ,
1290
- }
1235
+ self . send_block_response ( rejection) ;
1291
1236
1292
1237
self . signer_db
1293
1238
. insert_block ( & block_info)
0 commit comments