Parcourir la source

Hotfix span selection (#110)

Fix an issue in span selection that was introduced in #106
justheuristic il y a 2 ans
Parent
commit
8dc0f513ba
2 fichiers modifiés avec 4 ajouts et 1 suppressions
  1. 1 1
      src/petals/client/routing/sequence_info.py
  2. 3 0
      tests/test_sequence_manager.py

+ 1 - 1
src/petals/client/routing/sequence_info.py

@@ -86,7 +86,7 @@ class RemoteSequenceInfo:
                 if (
                     info is None
                     or peer_id not in info.servers
-                    or info.servers[peer_id] != ServerState.ONLINE
+                    or info.servers[peer_id].state != ServerState.ONLINE
                     or block_index == len(block_infos) - 1
                 ):
                     closed_spans.append(active_spans.pop(peer_id))

+ 3 - 0
tests/test_sequence_manager.py

@@ -29,6 +29,9 @@ def test_sequence_manager_shutdown():
         sequence_manager=TestSequenceManager(dht, block_uids, sequential.p2p, _was_shut_down=shutdown_evt, start=True),
     )
 
+    sequence = sequential.sequence_manager.make_sequence()
+    assert all(sequence[i].peer_id != sequence[i + 1].peer_id for i in range(len(sequence) - 1))
+
     assert sequential.sequence_manager.is_alive()
     assert sequential.sequence_manager._thread.ready.is_set()
     assert not shutdown_evt.is_set()