-
Notifications
You must be signed in to change notification settings - Fork 419
Support rpath list in asyn put #713
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
Conversation
|
I couldn't really find a good place to add a test for this in fsspec, looks like this is more something that is deferred to tests in the concrete async filesystems like GCSFS? I could possibly extend https://github.com/dask/gcsfs/blob/main/gcsfs/tests/test_core.py#L460 to cover this regression |
36ea406 to
5c2ce89
Compare
There is currently a bug that this would have caught from fsspec/filesystem_spec#712 Will fail until fsspec/filesystem_spec#713 is available.
There is currently a bug that this would have caught from fsspec/filesystem_spec#712 Will fail until fsspec/filesystem_spec#713 is available.
There is currently a bug that this would have caught from fsspec/filesystem_spec#712 Will fail until fsspec/filesystem_spec#713 is available.
|
Is this an issue for |
|
Nope no issue with _get - this was coming just from the code that was handling making directories. And I think https implementation has a good test of this already in test_multi_download I believe you saw it, but the test in fsspec/gcsfs#401 covers it indirectly at least |
martindurant
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All looks good and function. Just the one question (see below).
I agree now that this will only get tested in gcsfs, but that's OK. Note that gcsfs tests run in CI here, so a test there ( fsspec/gcsfs#401 ) will show up here too after merging.
fsspec/asyn.py
Outdated
| rpaths = other_paths(lpaths, rpath) | ||
|
|
||
| rdirs = [r for l, r in zip(lpaths, rpaths) if os.path.isdir(l)] | ||
| file_pairs = [(l, r) for l, r in zip(lpaths, rpaths) if not os.path.isdir(l)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we possibly avoid calling isdir on every file twice?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is now called just once per file
5c2ce89 to
12684e9
Compare
There is currently a bug that this would have caught from fsspec/filesystem_spec#712 Will fail until fsspec/filesystem_spec#713 is available.
There is currently a bug that this would have caught from fsspec/filesystem_spec#712 Will fail until fsspec/filesystem_spec#713 is available.
Fixes #712