工作者无法使用rasterio反序列化

时间:2019-07-30 11:04:31

标签: dask dask-distributed dask-kubernetes

在Google Cloud上部署了官方的Dask Helm图表后,我用一些额外的conda软件包(特别是xarray和rasterio)更新了环境。 如果我尝试运行代码,则会从工作日志中找回此错误,并且过程将停止。

  

回溯(最近通话最近):文件   “ /opt/conda/lib/python3.7/site-packages/tornado/ioloop.py”,第743行,   在_run_callback中ret = callback()文件   “ /opt/conda/lib/python3.7/site-packages/tornado/ioloop.py”,第767行,   在_discard_future_result future.result()文件中   “ /opt/conda/lib/python3.7/site-packages/tornado/gen.py”,第742行,在   运行yielded = self.gen.throw(* exc_info)#类型:忽略文件   “ /opt/conda/lib/python3.7/site-packages/distributed/worker.py”,行   661,在handle_scheduler self.ensure_computing中))文件   “ /opt/conda/lib/python3.7/site-packages/tornado/gen.py”,第735行,在   运行值= future.result()文件   “ /opt/conda/lib/python3.7/site-packages/tornado/gen.py”,第742行,在   运行yielded = self.gen.throw(* exc_info)#类型:忽略文件   “ /opt/conda/lib/python3.7/site-packages/distributed/core.py”,行   386,在handle_stream中msgs =产生comm.read()文件   “ /opt/conda/lib/python3.7/site-packages/tornado/gen.py”,第735行,在   运行值= future.result()文件   “ /opt/conda/lib/python3.7/site-packages/tornado/gen.py”,第742行,在   运行yielded = self.gen.throw(* exc_info)#类型:忽略文件   “ /opt/conda/lib/python3.7/site-packages/distributed/comm/tcp.py”,行   206,在读取的反序列化器=反序列化器)文件中   “ /opt/conda/lib/python3.7/site-packages/tornado/gen.py”,第735行,在   运行值= future.result()文件   “ /opt/conda/lib/python3.7/site-packages/tornado/gen.py”,第209行,在   包装器产生=下一个(结果)文件   “ /opt/conda/lib/python3.7/site-packages/distributed/comm/utils.py”,   第82行,位于from_frames res = _from_frames()文件中   “ /opt/conda/lib/python3.7/site-packages/distributed/comm/utils.py”,   _from_frames中的第68行,deserializers = deserializers)文件   “ /opt/conda/lib/python3.7/site-packages/distributed/protocol/core.py”,   第132行,在荷载值= _deserialize(head,fs,   解串器=解串器)文件   “ /opt/conda/lib/python3.7/site-packages/distributed/protocol/serialize.py”,   第184行,反序列化返回负载(标题,框架)文件   “ /opt/conda/lib/python3.7/site-packages/distributed/protocol/serialize.py”,   第57行,在pickle_loads中返回pickle.loads(b''。join(frames))File   “ /opt/conda/lib/python3.7/site-packages/distributed/protocol/pickle.py”,   第59行,在加载中返回pickle.loads(x)文件   “ /opt/conda/lib/python3.7/site-packages/rasterio/init.py”,行   22,从rasterio._base中导入gdal_version ImportError:   libzstd.so.1:无法打开共享库文件:无此文件或   目录

据我所知,问题似乎是库libzstdl丢失或损坏,对吗?我没有管理员权限,因此无法尝试重新安装。舵手推车基于官方的dask / docker版本 谁能帮我找到在哪个渠道上报告此问题更好?

2 个答案:

答案 0 :(得分:0)

您的所有客户和工作人员的版本似乎都不相同。请注意,您正在使用的EXTRA_CONDA_PACKAGES=环境变量需要在客户端规范和工作程序规范中使用,而不仅仅是一个。

您也可以尝试client.get_versions(check=True)来验证Dask更重要的某些软件包是否已同步。

答案 1 :(得分:0)

解决了添加到头盔文件中的问题:

env:
    - name: EXTRA_APT_PACKAGES
      value : libzstd1