google / google/mobly-snippet-lib

Rewrite RPC stack to be more reliable

Open
#77 8 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
44
Forks
25
PR merge metrics
No merged PRs in 30d

Description

I'm seeing too many of these:

>
> Details: No response from server.
> Stack trace:
> Traceback (most recent call last):
> File "mobly/base_test.py", line 356, in exec_one_test
> test_method()
> ...
> File "mobly/controllers/android_device_lib/jsonrpc_client_base.py", line 285, in rpc_call
> return self._rpc(name, *args)
> File "mobly/controllers/android_device_lib/jsonrpc_client_base.py", line 265, in _rpc
> raise ProtocolError(ProtocolError.NO_RESPONSE_FROM_SERVER)
> ProtocolError: No response from server.

JSON-RPC is not a good protocol. Something better, probably making use of protobuf, would be a good start. The Python side implementation also needs improvement, since it doesn't support partial reads that has too long a delay between messages.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.