我在图中的不同任务上多次得到以下错误(执行之间的变化)。可能在某些任务返回numpy.array和scipy.sparse矩阵时。
distributed.protocol.pickle - INFO - Failed to deserialize b'\x80\x04'
Traceback (most recent call last):
File "/home/user/venv/lib/python3.5/site-packages/distributed/protocol/pickle.py", line 59, in loads
return pickle.loads(x)
EOFError: Ran out of input
distributed.protocol.core - CRITICAL - Failed to deserialize
Traceback (most recent call last):
File "/home/user/venv/lib/python3.5/site-packages/distributed/protocol/core.py", line 119, in loads
value = _deserialize(head, fs)
File "/home/user/venv/lib/python3.5/site-packages/distributed/protocol/serialize.py", line 158, in deserialize
return f(header, frames)
File "/home/user/venv/lib/python3.5/site-packages/distributed/protocol/serialize.py", line 20, in <lambda>
deserializers = {None: lambda header, frames: pickle.loads(b''.join(frames))}
File "/home/user/venv/lib/python3.5/site-packages/distributed/protocol/pickle.py", line 59, in loads
return pickle.loads(x)
EOFError: Ran out of input
distributed.comm.utils - ERROR - truncated data stream (485 bytes): [b'', b"\x92\x83\xa6report\xc2\xa4keys\x91\xd9P('_avro_body-read-block-bag-from-delayed-67c7a9690149de9743ed970f873fa1d6', 283)\xa2op\xabdelete-data\x86\xa8priority\x93\x00\x01\xcc\xce\xa6nbytes\x81\xd9:('bag-from-delayed-67c7a9690149de9743ed970f873fa1d6', 283)\xce\x00 \x86p\xa8duration\xcb@\x18\x16m\x88xX\x00\xa7who_has\x81\xd9:('bag-from-delayed-67c7a9690149de9743ed970f873fa1d6', 283)\x91\xb5tcp://127.0.0.1:38623\xa2op\xaccompute-task\xa3key\xd9K('pluck-map-process_features_sparse-d94d304dc59efb780c39bfb0ca4df37f', 283)", b'\x83\xabbytestrings\x90\xa7headers\x81\x92\x01\xa4task\x83\xabcompression\x91\xc0\xa5count\x01\xa7lengths\x91\x02\xa4keys\x91\x92\x01\xa4task', b'\x80\x04']
distributed.worker - INFO - Connection to scheduler broken. Reregistering
distributed.worker - INFO - -------------------------------------------------
distributed.worker - INFO - Registered to: tcp://127.0.0.1:8786
distributed.worker - INFO - -------------------------------------------------对于不同大小的缓冲区(有时小到几个字节),整个集群运行在一台机器上,这始终是一个EOFError: Ran out of input错误。
理想情况下,我希望有一个实际问题的解决方案,但也将感谢调查问题并了解可能出现问题的方法。现在我有点卡住了,不知道如何解决手头的问题。
运行client.get_versions(check=True)时没有出现错误,并且在更新所有包(即numpy、scipy、dask、dask-distributed、cloudpickle)后仍然存在
发布于 2019-02-27 12:17:24
最近对cloudpickle项目( dask使用的)进行了修补,以修复可能导致此错误的问题。
这条评论解释了一些细节:https://github.com/ray-project/ray/issues/2685#issuecomment-423182347
有关更多详细信息,请参阅cloudpickle github存储库中的相关问题/PR。
顺便说一句,我今天遇到了这个错误(包括b'\x80\x04'部分),将cloudpickle更新到0.8.0似乎已经修复了这个错误。
https://stackoverflow.com/questions/48757749
复制相似问题