File tree Expand file tree Collapse file tree 1 file changed +39
-0
lines changed Expand file tree Collapse file tree 1 file changed +39
-0
lines changed Original file line number Diff line number Diff line change @@ -1053,6 +1053,45 @@ fn run_topology_test_ex<F>(
1053
1053
( 100.0 * ( peer_counts as f64 ) ) / ( ( peer_count * peer_count) as f64 ) ,
1054
1054
) ;
1055
1055
1056
+ // wait for stacker DBs to converge
1057
+ for ( i, peer) in peers. iter ( ) . enumerate ( ) {
1058
+ if i % 2 != 0 {
1059
+ continue ;
1060
+ }
1061
+ for ( j, other_peer) in peers. iter ( ) . enumerate ( ) {
1062
+ if i == j {
1063
+ continue ;
1064
+ }
1065
+
1066
+ let all_neighbors =
1067
+ PeerDB :: get_all_peers ( other_peer. network . peerdb . conn ( ) ) . unwrap ( ) ;
1068
+
1069
+ if ( all_neighbors. len ( ) as u64 ) < ( ( peer_count - 1 ) as u64 ) {
1070
+ // this is a simulated-NAT'ed node -- it won't learn about other NAT'ed nodes'
1071
+ // DBs
1072
+ continue ;
1073
+ }
1074
+
1075
+ if j % 2 != 0 {
1076
+ continue ; // this peer doesn't support Stacker DBs
1077
+ }
1078
+ let dbs = peer
1079
+ . network
1080
+ . peerdb
1081
+ . get_peer_stacker_dbs ( & other_peer. config . to_neighbor ( ) )
1082
+ . unwrap ( ) ;
1083
+ if dbs. is_empty ( ) {
1084
+ test_debug ! (
1085
+ "waiting for peer {i} {} to learn about peer {j} {}'s stacker DBs" ,
1086
+ & peer. config. to_neighbor( ) ,
1087
+ & other_peer. config. to_neighbor( )
1088
+ ) ;
1089
+ finished = false ;
1090
+ break ;
1091
+ }
1092
+ }
1093
+ }
1094
+
1056
1095
if finished {
1057
1096
break ;
1058
1097
}
You can’t perform that action at this time.
0 commit comments