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

No output while ResolveLib find matches for root requirements #9071

Open
McSinyx opened this issue Oct 30, 2020 · 1 comment
Open

No output while ResolveLib find matches for root requirements #9071

McSinyx opened this issue Oct 30, 2020 · 1 comment

Comments

@McSinyx
Copy link
Contributor

McSinyx commented Oct 30, 2020

Environment

  • pip version: 92f9e77 (almost current master)
  • Python version: irrelevant
  • OS: irrelevant

Description

Do you think the same reasoning could explain a catastrophic degradation of pip wheel -r requirements.txt --no-deps --use-feature=2020-resolver on python 2, with all wheels in cache ? I'm examining a case right now that seems to take forever (> 3 hours) on python 2, while similar cases work fine on python 3.

Originally posted by @sbidoul in #8664 (comment)

Currently, when a series of requirement specifiers is given to pip, ResolveLib adds each of them and call PipProvider.find_matches upon them. Only until all of the requirements are added, pip starts print the progress (e.g. Collecting …), so it's unclear what is happening during the visual hang, especially if the requirement list is long (cc GH-9065). This shouldn't be a performance issue if the index pages are cached, so I think this has more to do with user experience.

Expected behavior

pip says something about what it's doing, e.g. like when PIP_RESOLVER_DEBUG=1.

How to Reproduce

  1. Get a long requirements.txt (if I have your permission, @sbidoul, I'll upload yours here, or you can upload them yourselves with potentially private information stripped away)
  2. Run pip wheel -r requirements.txt and notice how quickly it gets to the progress output (and cancel the command)
  3. Run pip wheel -r requirements.txt --use-feature=2020-resolver and compare
  4. Run PIP_RESOLVER_DEBUG=1 pip wheel -r requirements.txt --use-feature=2020-resolver

As a side note, I haven't run it for very long for the Python 2 requirements set so probably the 3h hang is due to another bug. I'll keep looking into it and see if there's anything else.

@sbidoul
Copy link
Member

sbidoul commented Nov 1, 2020

Thanks to @xavfernandez 's #9078 this is indeed "merely" a UX issue now.

This shouldn't be a performance issue if the index pages are cached, so I think this has more to do with user experience.

Regarding caching of index pages, see also #9082.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants