You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Regression failures reading fsspec ReferenceFileSystem file with zarr 2.13.6 #1324
Fsspec ReferenceFileSystem files for image file sequences produced by tifffile can no longer be read correctly by zarr 2.13.6. Version 2.13.3 worked fine.
I believe the main point of that PR was to provide listdir() on what otherwise would be an unstructured dict-like interface. I don't know why that would cause a difference, though.
This is not tested with the reference filesystem. We hoped it would just work with all fsspec implementations. However, there is a lot of variability and special cases across different implementations. If I had to speculate further, I would guess that the reference filesystem FSMap has certain attributes (beyond check, create, and missing_exceptions) that are not copied over to the FSStore.
On the one hand, happy to help roll out a fix ASAP. Solutions that occur to me (beyond a PR) if anyone wants to raise them:
pull 2.13.6
revert the mentioned PRs
One things have settled, I'd also vote for having @cgohlke's code in an automated test somewhere. That can be an additional workflow here, or workflows in other repos that run with pip install --pre zarr so as to help catch these issues.
Activity
jakirkham commentedon Jan 19, 2023
Thanks Christoph! Sorry for the trouble
Is it possible to run
git bisect?cgohlke commentedon Jan 19, 2023
#1304
jakirkham commentedon Jan 19, 2023
Thanks! 🙏
@ravwojdyla @martindurant, do either of you have thoughts here?
martindurant commentedon Jan 19, 2023
I believe the main point of that PR was to provide listdir() on what otherwise would be an unstructured dict-like interface. I don't know why that would cause a difference, though.
rabernat commentedon Jan 19, 2023
My guess would be that the
FSMapcreated byget_mapperis not being properly converted into anFSStoreby this codezarr-python/zarr/storage.py
Lines 144 to 151 in 385b5d3
This is not tested with the reference filesystem. We hoped it would just work with all fsspec implementations. However, there is a lot of variability and special cases across different implementations. If I had to speculate further, I would guess that the reference filesystem FSMap has certain attributes (beyond
check,create, andmissing_exceptions) that are not copied over to the FSStore.rabernat commentedon Jan 19, 2023
The main point of #1304 was to fix the performance regression reported in #1296, which also resulted from the divergence between FSStore and FSMap.
joshmoore commentedon Jan 19, 2023
Thanks, @cgohlke, as always.
On the one hand, happy to help roll out a fix ASAP. Solutions that occur to me (beyond a PR) if anyone wants to raise them:
One things have settled, I'd also vote for having @cgohlke's code in an automated test somewhere. That can be an additional workflow here, or workflows in other repos that run with
pip install --pre zarrso as to help catch these issues.ap-- commentedon Jan 19, 2023
Hello everyone,
It seems it's a regression introduced in
fsspec==2022.11.0that was revealed with the new zarr version.I had a look at this and found that changing:
https://github.com/fsspec/filesystem_spec/blame/b4661bbe85b106f065faa2ef390d6404f8cd6cc4/fsspec/implementations/reference.py#L353
in
fsspec.implementations.referenceto:sort=False,Fixes the test code provided above.
Installing
fsspec==2022.10.0does too.I can dig further later today.
cgohlke commentedon Jan 19, 2023
Fixed in fsspec 2023.1.0. Thank you all.