We can use Zarr variable chunking (zarr-developers/zarr-python#1595) for the intermediate storage in rechunking. This results in fewer stages than the workaround in #867 for regular chunks, while still ensuring that the final output is regularly chunked.
I have a draft which uses zarr-developers/zarr-python#3534, which passes basic tests.
It's currently opt-in: a.rechunk(chunks, allow_irregular=True).
cc @keewis
We can use Zarr variable chunking (zarr-developers/zarr-python#1595) for the intermediate storage in rechunking. This results in fewer stages than the workaround in #867 for regular chunks, while still ensuring that the final output is regularly chunked.
I have a draft which uses zarr-developers/zarr-python#3534, which passes basic tests.
It's currently opt-in:
a.rechunk(chunks, allow_irregular=True).cc @keewis