Skip to content
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

fs: temporarily disable prefix-based search for fsspec-implementations #6096

Merged
merged 2 commits into from Jun 2, 2021

Conversation

isidentical
Copy link
Contributor

This is a temporary fix for #6089. It disables the partial prefix (00/0) search optimization entirely for all fsspec implementations and does it in the regular way (with only listing the full path of 00/). This API is not actually supported to be optimized on the fsspec side so we will wait for all the clouds we support (s3, azure, google cloud) and then turn on the optimization (In the ObjectFSWrapper) this time with just fixing the custom find() method in the subclass.

@isidentical isidentical requested review from pmrowla and efiop June 2, 2021 06:42
Comment on lines +44 to +51
# Clouds that implement the general methods that can be tested
# for functional tests that require extensive apis (e.g traversing
# via walk_files())
full_clouds = [
pytest.lazy_fixture(cloud)
for cloud in ["s3", "gs", "azure", "ssh", "hdfs"]
]

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's add these directly to test_pull_00_prefix parametrization, since they are not used anywhere else.

Comment on lines +402 to +406
# During the tests, for ensuring that the traverse behavior
# is working we turn on this option. It will ensure the
# list_hashes_traverse() is called.
always_traverse = getattr(self.fs, "_ALWAYS_TRAVERSE", False)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It feels a bit weird to amend the core code like that only for the tests. I guess this is a hint for an upcoming refactor of this part of code 🙁

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pmrowla Do you foresee this part being refactored to accommodate the test better? Maybe you have any suggestions?

@efiop
Copy link
Member

efiop commented Jun 2, 2021

Ok, let's merge and release, but discuss ^^^

Thank you! 🙏

@efiop efiop merged commit 9e822ed into master Jun 2, 2021
@efiop efiop deleted the s3-00-prefix branch June 2, 2021 12:06
@efiop efiop added the bugfix fixes bug label Jun 2, 2021
@isidentical isidentical self-assigned this Jun 8, 2021
@isidentical isidentical added this to In progress in DVC Jun 1 - 15 2021 via automation Jun 8, 2021
@isidentical isidentical moved this from In progress to Done in DVC Jun 1 - 15 2021 Jun 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix fixes bug
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

3 participants