@@ -162,14 +162,14 @@ impl VotingService {
162162 bank_forks : Arc < RwLock < BankForks > > ,
163163 test_override : Option < VotingServiceOverride > ,
164164 ) -> Self {
165- let ( additional_listeners, alpenglow_port_override) = test_override
166- . map ( |test_override| {
167- (
168- Some ( test_override . additional_listeners ) ,
169- Some ( test_override . alpenglow_port_override ) ,
170- )
171- } )
172- . unwrap_or ( ( None , None ) ) ;
165+ let ( additional_listeners, alpenglow_port_override) = match test_override {
166+ None => ( Vec :: new ( ) , None ) ,
167+ Some ( VotingServiceOverride {
168+ additional_listeners,
169+ alpenglow_port_override,
170+ } ) => ( additional_listeners , Some ( alpenglow_port_override ) ) ,
171+ } ;
172+
173173 let thread_hdl = Builder :: new ( )
174174 . name ( "solVoteService" . to_string ( ) )
175175 . spawn ( move || {
@@ -208,7 +208,7 @@ impl VotingService {
208208 vote_history_storage. as_ref( ) ,
209209 bls_op,
210210 connection_cache. clone( ) ,
211- additional_listeners. as_ref ( ) ,
211+ & additional_listeners,
212212 & mut staked_validators_cache,
213213 ) ;
214214 }
@@ -267,17 +267,9 @@ impl VotingService {
267267 cluster_info : & ClusterInfo ,
268268 bls_message : & BLSMessage ,
269269 connection_cache : Arc < ConnectionCache > ,
270- additional_listeners : Option < & Vec < SocketAddr > > ,
270+ additional_listeners : & [ SocketAddr ] ,
271271 staked_validators_cache : & mut StakedValidatorsCache ,
272272 ) {
273- let ( staked_validator_alpenglow_sockets, _) = staked_validators_cache
274- . get_staked_validators_by_slot_with_alpenglow_ports ( slot, cluster_info, Instant :: now ( ) ) ;
275-
276- let sockets = additional_listeners
277- . map ( |v| v. as_slice ( ) )
278- . unwrap_or ( & [ ] )
279- . iter ( )
280- . chain ( staked_validator_alpenglow_sockets. iter ( ) ) ;
281273 let buf = match serialize ( bls_message) {
282274 Ok ( buf) => buf,
283275 Err ( err) => {
@@ -286,15 +278,18 @@ impl VotingService {
286278 }
287279 } ;
288280
281+ let ( staked_validator_alpenglow_sockets, _) = staked_validators_cache
282+ . get_staked_validators_by_slot_with_alpenglow_ports ( slot, cluster_info, Instant :: now ( ) ) ;
283+ let sockets = additional_listeners
284+ . iter ( )
285+ . chain ( staked_validator_alpenglow_sockets. iter ( ) ) ;
286+
289287 // We use send_message in a loop right now because we worry that sending packets too fast
290288 // will cause a packet spike and overwhelm the network. If we later find out that this is
291289 // not an issue, we can optimize this by using multi_targret_send or similar methods.
292- for alpenglow_socket in sockets {
293- if let Err ( e) = send_message ( buf. clone ( ) , alpenglow_socket, & connection_cache) {
294- warn ! (
295- "Failed to send alpenglow message to {}: {:?}" ,
296- alpenglow_socket, e
297- ) ;
290+ for socket in sockets {
291+ if let Err ( e) = send_message ( buf. clone ( ) , socket, & connection_cache) {
292+ warn ! ( "Failed to send alpenglow message to {}: {:?}" , socket, e) ;
298293 }
299294 }
300295 }
@@ -304,7 +299,7 @@ impl VotingService {
304299 vote_history_storage : & dyn VoteHistoryStorage ,
305300 bls_op : BLSOp ,
306301 connection_cache : Arc < ConnectionCache > ,
307- additional_listeners : Option < & Vec < SocketAddr > > ,
302+ additional_listeners : & [ SocketAddr ] ,
308303 staked_validators_cache : & mut StakedValidatorsCache ,
309304 ) {
310305 match bls_op {
0 commit comments