diff options
| author | tv <tv@krebsco.de> | 2026-11-05 05:46:15 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-05 05:46:15 +0100 |
| commit | 13476a8cf598770b501cf0b02a26725a6f5ce3d5 (patch) | |
| tree | c8e067045039f50ce3020add3a7a2aee7d8538ee /src/simtest | |
| parent | 4e53e152f83ecb88fa162e0a18e6832df5a38fef (diff) | |
trees as member chose
Diffstat (limited to 'src/simtest')
| -rw-r--r-- | src/simtest/bench.rs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/simtest/bench.rs b/src/simtest/bench.rs index 40b413d..39e054e 100644 --- a/src/simtest/bench.rs +++ b/src/simtest/bench.rs @@ -600,7 +600,15 @@ async fn trees(out: &mut String, nodes: &[AppState], net: &crate::transport::sim }; let mut latencies = Vec::new(); for node in nodes { - latencies.extend(crate::swarm::tree::own_latencies(node, &latency).await); + // Each member's parent in this node's tree, as the member chose it. + let mut parents = std::collections::HashMap::new(); + for member in nodes { + if member.local_id() != node.local_id() { + let chosen = crate::swarm::tree::own_parent(member, node.local_id()).await; + parents.insert(member.local_id().to_owned(), chosen); + } + } + latencies.extend(crate::swarm::tree::own_latencies(node, &parents, &latency).await); } let members: usize = latencies.iter().map(|l| l.members).sum(); if members == 0 { |
