dask / dask/distributed

AttributeError: 'ZarrStore' object has no attribute '_append_dim'

Open
#4,419 11 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
1.7k
Forks
778
Avg merge
2h 50m
Merged PRs (30d)
3

Description

My code is like this:

```python
def compute_a_year(year, data=data, datatype=datatype):
return map_decrease_rate(data=data, datatype=datatype, year=year)

def lmap(f, x):
futures = dask_client.map(f, x)
return dask_client.gather(futures)

return xr.concat(lmap(compute_a_year, years),
dim=xr.DataArray(years, dims='year', name='year'))

```

map_decrease_rate is a function that make a lengthy calculation.

I get the following error raised by dask_client.gather

`AttributeError: 'ZarrStore' object has no attribute '_append_dim'`

No calculation is performed, the error seems to be raised after moving the data, before the calculation is started.

the full traceback is:

```python-traceback
~/anaconda3/lib/python3.7/site-packages/distributed/client.py in gather(self, futures, errors, direct, asynchronous)
1989 direct=direct,
1990 local_worker=local_worker,
-> 1991 asynchronous=asynchronous,
1992 )
1993

~/anaconda3/lib/python3.7/site-packages/distributed/client.py in sync(self, func, asynchronous, callback_timeout, *args, **kwargs)
830 else:
831 return sync(
--> 832 self.loop, func, *args, callback_timeout=callback_timeout, **kwargs
833 )
834

~/anaconda3/lib/python3.7/site-packages/distributed/utils.py in sync(loop, func, callback_timeout, *args, **kwargs)
338 if error[0]:
339 typ, exc, tb = error[0]
--> 340 raise exc.with_traceback(tb)
341 else:
342 return result[0]

~/anaconda3/lib/python3.7/site-packages/distributed/utils.py in f()
322 if callback_timeout is not None:
323 future = asyncio.wait_for(future, callback_timeout)
--> 324 result[0] = yield future
325 except Exception as exc:
326 error[0] = sys.exc_info()

~/anaconda3/lib/python3.7/site-packages/tornado/gen.py in run(self)
760
761 try:
--> 762 value = future.result()
763 except Exception:
764 exc_info = sys.exc_info()

~/anaconda3/lib/python3.7/site-packages/distributed/client.py in _gather(self, futures, errors, direct, local_worker)
1848 exc = CancelledError(key)
1849 else:
-> 1850 raise exception.with_traceback(traceback)
1851 raise exc
1852 if errors == "skip":

~/.conda/envs/rsrt/lib/python3.7/site-packages/distributed/utils.py in offload()

~/.conda/envs/rsrt/lib/python3.7/concurrent/futures/thread.py in run()

~/.conda/envs/rsrt/lib/python3.7/site-packages/distributed/utils.py in ()

~/.conda/envs/rsrt/lib/python3.7/site-packages/distributed/worker.py in _deserialize()

~/.conda/envs/rsrt/lib/python3.7/site-packages/distributed/worker.py in loads_function()

~/.conda/envs/rsrt/lib/python3.7/site-packages/distributed/protocol/pickle.py in loads()
```

**What happened**:

AttributeError

**What you expected to happen**:

the calculation should stard in the "web status page", but no, it does not.

**Minimal Complete Verifiable Example**:

I don't have one, I'm not able to isolate the problem.

**Anything else we need to know?**:

**Environment**:

- Dask version: - dask=2020.12.0=pyhd3eb1b0_0 - dask-core=2020.12.0=pyhd3eb1b0_0
- Python version: 3.7.6
- Operating System: linux
- Install method (conda, pip, source): conda

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.