repo = 'out-of-order'
archive = <swh.provenance.archive.storage.ArchiveStorage object at 0x7f2c94281e48>
@pytest.mark.parametrize(
"repo",
("cmdbts2", "out-of-order", "with-merges"),
)
def test_archive_graph(repo: str, archive: ArchiveInterface) -> None:
data = load_repo_data(repo)
fill_storage(archive.storage, data)
with grpc_server(repo) as url:
# test against ArchiveGraph
archive_graph = ArchiveGraph(url, archive.storage)
with pytest.raises(NotImplementedError):
check_directory_ls(archive, archive_graph, data)
> check_revision_get_some_outbound_edges(archive, archive_graph, data)
.tox/py3/lib/python3.7/site-packages/swh/provenance/tests/test_archive_interface.py:244:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/py3/lib/python3.7/site-packages/swh/provenance/tests/test_archive_interface.py:76: in check_revision_get_some_outbound_edges
archive.revision_get_some_outbound_edges(revision["id"])
/usr/lib/python3.7/collections/__init__.py:566: in __init__
self.update(*args, **kwds)
/usr/lib/python3.7/collections/__init__.py:653: in update
_count_elements(self, iterable)
.tox/py3/lib/python3.7/site-packages/swh/provenance/archive/swhgraph.py:48: in revision_get_some_outbound_edges
for node in request:
.tox/py3/lib/python3.7/site-packages/grpc/_channel.py:426: in __next__
return self._next()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <_MultiThreadedRendezvous of RPC that terminated with:
status = StatusCode.UNAVAILABLE
details = "failed to connect ... last error: UNKNOWN: tcp handshaker shutdown {grpc_status:14, created_time:"2022-10-11T10:28:38.001157805+00:00"}]}"
>
def _next(self):
with self._state.condition:
if self._state.code is None:
event_handler = _event_handler(self._state,
self._response_deserializer)
self._state.due.add(cygrpc.OperationType.receive_message)
operating = self._call.operate(
(cygrpc.ReceiveMessageOperation(_EMPTY_FLAGS),),
event_handler)
if not operating:
self._state.due.remove(cygrpc.OperationType.receive_message)
elif self._state.code is grpc.StatusCode.OK:
raise StopIteration()
else:
raise self
def _response_ready():
return (self._state.response is not None or
(cygrpc.OperationType.receive_message
not in self._state.due and
self._state.code is not None))
_common.wait(self._state.condition.wait, _response_ready)
if self._state.response is not None:
response = self._state.response
self._state.response = None
return response
elif cygrpc.OperationType.receive_message not in self._state.due:
if self._state.code is grpc.StatusCode.OK:
raise StopIteration()
elif self._state.code is not None:
> raise self
E grpc._channel._MultiThreadedRendezvous: <_MultiThreadedRendezvous of RPC that terminated with:
E status = StatusCode.UNAVAILABLE
E details = "failed to connect to all addresses; last error: UNKNOWN: tcp handshaker shutdown"
E debug_error_string = "UNKNOWN:Failed to pick subchannel {created_time:"2022-10-11T10:28:38.00116058+00:00", children:[UNKNOWN:failed to connect to all addresses; last error: UNKNOWN: tcp handshaker shutdown {grpc_status:14, created_time:"2022-10-11T10:28:38.001157805+00:00"}]}"
E >
.tox/py3/lib/python3.7/site-packages/grpc/_channel.py:826: _MultiThreadedRendezvous
TEST RESULT
TEST RESULT
- Run At
- Oct 11 2022, 12:31 PM