Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Feat: improves delete_dir for s3fs-backed FsspecStore (#2661)
* Implement asynchronous directory deletion in FsspecStore - override Store.delete_dir default method, which deletes keys one by one, to support bulk deletion for fsspec implementations that support a list of paths in the fs._rm method. - This can greatly reduce the number of requests to S3, which reduces likelihood of running into throttling errors and improves delete performance. - Currently, only s3fs is supported. * Use async batched _rm() for FsspecStore.delete_dir() * Suppress allowed exceptions instead of try-except-pass * Adds note on possibly redundant condition in FsspecStore.delete_dir() * Fix: unpack allowed arguments list * Adds tests for FsspecStore.delete_dir * Update src/zarr/storage/_fsspec.py Co-authored-by: Joe Hamman <jhamman1@gmail.com> * Remove supports_listing condition from FsspecStore.delete_dir * use f-string for url formatting * assert `store.fs.asynchronous` instead of `store.fs.async_impl` * updates release notes * remove unused import * Explicitly construct wrapped local filesystem for test --------- Co-authored-by: Joe Hamman <joe@earthmover.io> Co-authored-by: Joe Hamman <jhamman1@gmail.com> Co-authored-by: Deepak Cherian <dcherian@users.noreply.github.com>
- Loading branch information