@@ -113,7 +113,7 @@ impl RouteInfoManager {
113113 cluster_name : CheetahString ,
114114 broker_addr : CheetahString ,
115115 broker_name : CheetahString ,
116- broker_id : i64 ,
116+ broker_id : u64 ,
117117 ha_server_addr : CheetahString ,
118118 zone_name : Option < CheetahString > ,
119119 _timeout_millis : Option < i64 > ,
@@ -156,7 +156,7 @@ impl RouteInfoManager {
156156 . mut_from_ref ( )
157157 . get_mut ( & broker_name)
158158 . unwrap ( ) ;
159- let mut prev_min_broker_id = 0i64 ;
159+ let mut prev_min_broker_id = 0 ;
160160 if !broker_data. broker_addrs ( ) . is_empty ( ) {
161161 prev_min_broker_id = broker_data. broker_addrs ( ) . keys ( ) . min ( ) . copied ( ) . unwrap ( ) ;
162162 }
@@ -222,7 +222,7 @@ impl RouteInfoManager {
222222 . insert ( broker_id, broker_addr. clone ( ) ) ;
223223
224224 register_first |= old_addr. is_none ( ) ;
225- let is_master = mix_all:: MASTER_ID == broker_id as u64 ;
225+ let is_master = mix_all:: MASTER_ID == broker_id;
226226
227227 let is_prime_slave = enable_acting_master. is_some ( )
228228 && !is_master
@@ -334,8 +334,8 @@ impl RouteInfoManager {
334334 . insert ( broker_addr_info. clone ( ) , filter_server_list) ;
335335 }
336336
337- if mix_all:: MASTER_ID != broker_id as u64 {
338- let master_address = broker_data. broker_addrs ( ) . get ( & ( mix_all:: MASTER_ID as i64 ) ) ;
337+ if mix_all:: MASTER_ID != broker_id {
338+ let master_address = broker_data. broker_addrs ( ) . get ( & ( mix_all:: MASTER_ID ) ) ;
339339 if let Some ( master_addr) = master_address {
340340 let master_livie_info = self
341341 . broker_live_table
@@ -440,7 +440,7 @@ impl RouteInfoManager {
440440 !broker_data. broker_addrs ( ) . is_empty ( )
441441 && !broker_data
442442 . broker_addrs ( )
443- . contains_key ( & ( mix_all:: MASTER_ID as i64 ) )
443+ . contains_key ( & ( mix_all:: MASTER_ID ) )
444444 } ) ;
445445
446446 if !need_acting_master {
@@ -451,7 +451,7 @@ impl RouteInfoManager {
451451 if broker_data. broker_addrs ( ) . is_empty ( )
452452 || broker_data
453453 . broker_addrs ( )
454- . contains_key ( & ( mix_all:: MASTER_ID as i64 ) )
454+ . contains_key ( & ( mix_all:: MASTER_ID ) )
455455 || !broker_data. enable_acting_master ( )
456456 {
457457 continue ;
@@ -469,7 +469,7 @@ impl RouteInfoManager {
469469 {
470470 broker_data
471471 . broker_addrs_mut ( )
472- . insert ( mix_all:: MASTER_ID as i64 , acting_master_addr) ;
472+ . insert ( mix_all:: MASTER_ID , acting_master_addr) ;
473473 }
474474 }
475475 }
@@ -593,7 +593,7 @@ impl RouteInfoManager {
593593
594594 fn notify_min_broker_id_changed (
595595 & self ,
596- broker_addr_map : & HashMap < i64 , CheetahString > ,
596+ broker_addr_map : & HashMap < u64 , CheetahString > ,
597597 offline_broker_addr : Option < CheetahString > ,
598598 ha_broker_addr : Option < CheetahString > ,
599599 ) {
@@ -635,7 +635,7 @@ impl RouteInfoManager {
635635
636636 fn choose_broker_addrs_to_notify (
637637 & self ,
638- broker_addr_map : & HashMap < i64 , CheetahString > ,
638+ broker_addr_map : & HashMap < u64 , CheetahString > ,
639639 offline_broker_addr : Option < CheetahString > ,
640640 ) -> Option < Vec < CheetahString > > {
641641 if broker_addr_map. len ( ) == 1 || offline_broker_addr. is_some ( ) {
@@ -667,12 +667,11 @@ impl RouteInfoManager {
667667 broker_name : & CheetahString ,
668668 ) -> Option < BrokerMemberGroup > {
669669 let mut group_member = BrokerMemberGroup :: new ( cluster_name. clone ( ) , broker_name. clone ( ) ) ;
670+ let lock_ = self . lock . read ( ) ;
670671 if let Some ( broker_data) = self . broker_addr_table . get ( broker_name) {
671- let map = broker_data. broker_addrs ( ) . clone ( ) ;
672- for ( key, value) in map {
673- group_member. broker_addrs . insert ( key as u64 , value) ;
674- }
672+ group_member. broker_addrs = broker_data. broker_addrs ( ) . clone ( ) ;
675673 }
674+ drop ( lock_) ;
676675 Some ( group_member)
677676 }
678677
@@ -913,7 +912,7 @@ impl RouteInfoManager {
913912 if & broker_addr_info. broker_addr == ip {
914913 un_register_request. broker_name =
915914 CheetahString :: from_string ( broker_data. broker_name ( ) . to_string ( ) ) ;
916- un_register_request. broker_id = * broker_id as u64 ;
915+ un_register_request. broker_id = * broker_id;
917916 return true ;
918917 }
919918 }
@@ -949,7 +948,7 @@ impl RouteInfoManager {
949948
950949 if let Some ( broker_data) = self . broker_addr_table . get_mut ( broker_name. as_str ( ) ) {
951950 if !broker_data. broker_addrs ( ) . is_empty ( )
952- && un_register_request. broker_id as i64
951+ && un_register_request. broker_id
953952 == broker_data
954953 . broker_addrs ( )
955954 . iter ( )
0 commit comments