-
-
Notifications
You must be signed in to change notification settings - Fork 740
Closed
Description
This is a traceback from calling compute on an XArray computation on dask.distributed.
We're able to use dask.array on a NetCDF4 object without locks if our workers have single threads. However, when computing on the .data attribute backed by a NetCDF object wrapped by a few XArray containers we run into the following error. It appears to be coming from computing the shape, which is odd. Traceback below:
In [168]: ds = xr.open_mfdataset(fname, lock=False)
In [169]: ds.yParticle.data.sum().compute()
/net/scratch3/pwolfram/miniconda2/lib/python2.7/site-packages/dask/array/core.pyc in getarray()
47 lock.acquire()
48 try:
---> 49 c = a[b]
50 if type(c) != np.ndarray:
51 c = np.asarray(c)
/users/pwolfram/lib/python2.7/site-packages/xarray/core/indexing.pyc in __getitem__()
396
397 def __getitem__(self, key):
--> 398 return type(self)(self.array, self._updated_key(key))
399
400 def __setitem__(self, key, value):
/users/pwolfram/lib/python2.7/site-packages/xarray/core/indexing.pyc in _updated_key()
372
373 def _updated_key(self, new_key):
--> 374 new_key = iter(canonicalize_indexer(new_key, self.ndim))
375 key = []
376 for size, k in zip(self.array.shape, self.key):
/users/pwolfram/lib/python2.7/site-packages/xarray/core/utils.pyc in ndim()
380 @property
381 def ndim(self):
--> 382 return len(self.shape)
383
384 @property
/users/pwolfram/lib/python2.7/site-packages/xarray/core/indexing.pyc in shape()
384 def shape(self):
385 shape = []
--> 386 for size, k in zip(self.array.shape, self.key):
387 if isinstance(k, slice):
388 shape.append(len(range(*k.indices(size))))
/users/pwolfram/lib/python2.7/site-packages/xarray/conventions.pyc in shape()
447 @property
448 def shape(self):
--> 449 return self.array.shape[:-1]
450
451 def __str__(self):
/users/pwolfram/lib/python2.7/site-packages/xarray/core/indexing.pyc in shape()
384 def shape(self):
385 shape = []
--> 386 for size, k in zip(self.array.shape, self.key):
387 if isinstance(k, slice):
388 shape.append(len(range(*k.indices(size))))
/users/pwolfram/lib/python2.7/site-packages/xarray/core/utils.pyc in shape()
407 @property
408 def shape(self):
--> 409 return self.array.shape
410
411 def __array__(self, dtype=None):
netCDF4/_netCDF4.pyx in netCDF4._netCDF4.Variable.shape.__get__ (netCDF4/_netCDF4.c:32778)()
netCDF4/_netCDF4.pyx in netCDF4._netCDF4.Variable._getdims (netCDF4/_netCDF4.c:31870)()
RuntimeError: NetCDF: Not a valid ID
Metadata
Metadata
Assignees
Labels
No labels