-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ugly error from xarray chunkmanager when loading ManifestArray #114
Comments
@TomNicholas sorry if this is a silly question, I am but a neophyte and I'm trying to place VirtualiZarr in my mind: what can a user do with a collection of I think the eventual goal is to:
Is that correct? If so, I will stop trying to load data from the |
@ghidalgo3 that's exactly right. The only thing you've missed is that although writing out a "virtual" zarr store is a future aim, writing out actual kerchunk reference files works today! Which means that you can you this package for the same purpose that lots of people were already using
Yes you cannot load the Serious question: Did you read the documentation? If so how do you think it could be improved so as to make all this clearer? EDIT: In my opinion there is no such thing as silly questions, only imperfect documentation :) |
I did read the documentation, I think what was unclear to me was that there are 2 kinds of The first
If I could wave a magic wand to make it better I would not want the return value of |
(@ghidalgo3 I replied in #171 so as to preserve the original topic of this issue) |
If you create the
air1.nc
andair2.nc
files in the same way as in the docs, then concatenate them withcompat='equals'
, you get a super ugly error:This is because
compat='equals'
(which is currently xarray's default, though that should change, see pydata/xarray#8778) tries to load the coordinate variables in order to compare their values. Xarray thinks it needs to load them because it sees the.chunks
attribute, assumes it's a computable array like dask or cubed, then searches for a corresponding Chunk Manager to use to compute this chunked array.Basically
ManifestArray
breaks one of xarray's assumptions by being chunked but not computable. So it's another example of an array that causes the same issue as pydata/xarray#8733.The behaviour we want here is for xarray to be more lenient, and not attempt to load the array. Then it will progress to the
__eq__
comparison, andManifestArray
can report a more useful error if it gets coerced to an index, or actually just return its own definition of equality.The text was updated successfully, but these errors were encountered: