Report failed deserialization of errors in Ray client

This commit is contained in:
Eric Liang 2021-01-27 17:37:50 -08:00 committed by GitHub
parent 0e7343ec19
commit 2e01d5d26e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -172,7 +172,11 @@ class Worker:
except grpc.RpcError as e:
raise e.details()
if not data.valid:
err = cloudpickle.loads(data.error)
try:
err = cloudpickle.loads(data.error)
except Exception:
logger.exception("Failed to deserialize {}".format(data.error))
raise
logger.error(err)
raise err
return loads_from_server(data.data)
@ -256,7 +260,12 @@ class Worker:
except grpc.RpcError as e:
raise decode_exception(e.details)
if not ticket.valid:
raise cloudpickle.loads(ticket.error)
try:
raise cloudpickle.loads(ticket.error)
except Exception:
logger.exception("Failed to deserialize {}".format(
ticket.error))
raise
return ticket.return_ids
def call_release(self, id: bytes) -> None: