我最近尝试将我的Dask Distributed升级到2.3.0,并将fastparquet升级到0.3.2,但是发现在与Dask Distributed 2.1.0兼容的代码上,这导致了死锁和工作人员退出(我想利用read_parquet功能'gather_statistics = False',在Dask 2.2.0+中)。看起来龙卷风在使用较新版本的Dask时可能效果不佳-我会收到类似粘贴在底部的错误。
升级龙卷风似乎无法解决我在Dask 2.3.0中遇到的稳定性问题。我的集群中当前相关的软件包集看起来很稳定,是:
Python 3.7.3
dask==2.1.0
distributed==2.1.0
tornado==6.0.2
blosc==1.8.1
bokeh==1.2.0
cloudpickle==1.2.1
fastparquet==0.3.1
fsspec==0.4.1
msgpack==0.6.1
numpy==1.16.1
pandas==0.24.2
six==1.12.0
toolz==0.9.0
colorama==0.4.1
numba==0.44.1
python-snappy==0.5.1
Cython==0.29.13
Nodes are a mix of Ubuntu 18 and 19
对于Dask Distributed 2.3.x应该稳定的推荐软件包版本是什么?
我还应该确保集群中的所有节点都具有相同的版本吗?
2019-09-10 01:25:17,211 - INFO - 192.168.0.152 - tornado.application - ERROR - Exception in callback functools.partial(<bound method IOLoop._discard_future_result of <tornado.platform.asyncio.AsyncIOLoop object at 0x7f8d8963af28>>, <Future finished exception=TypeError("'NoneType' object is not subscriptable")>)
2019-09-10 01:25:17,214 - INFO - 192.168.0.152 - Traceback (most recent call last):
2019-09-10 01:25:17,265 - INFO - 192.168.0.152 - File "/usr/local/lib/python3.7/dist-packages/tornado/ioloop.py", line 743, in _run_callback
2019-09-10 01:25:17,300 - INFO - 192.168.0.152 - ret = callback()
2019-09-10 01:25:17,308 - INFO - 192.168.0.152 - File "/usr/local/lib/python3.7/dist-packages/tornado/ioloop.py", line 767, in _discard_future_result
2019-09-10 01:25:17,344 - INFO - 192.168.0.152 - future.result()
2019-09-10 01:25:17,373 - INFO - 192.168.0.152 - File "/usr/local/lib/python3.7/dist-packages/tornado/gen.py", line 742, in run
2019-09-10 01:25:17,379 - INFO - 192.168.0.152 - yielded = self.gen.send(value)
2019-09-10 01:25:17,394 - INFO - 192.168.0.152 - File "/usr/local/lib/python3.7/dist-packages/distributed/worker.py", line 796, in heartbeat
2019-09-10 01:25:17,411 - INFO - 192.168.0.152 - if response["status"] == "missing":
2019-09-10 01:25:17,447 - INFO - 192.168.0.152 - TypeError: 'NoneType' object is not subscriptable
答案 0 :(得分:1)
我们共同测试和共同发布了Dask的相关子软件包。我们努力做到这一点,以便在任何时候,所有软件包的最新版本都处于良好的工作状态。
我们有时可能会失败,但是如果这样做,那就是一个错误。在这种情况下,我建议在Github上提出错误报告。