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

Retry flaky tests #822

Closed
wants to merge 3 commits into from
Closed

Retry flaky tests #822

wants to merge 3 commits into from

Conversation

ofek
Copy link
Sponsor Contributor

@ofek ofek commented Feb 28, 2022

Motivation: #817 (comment)

@ofek ofek mentioned this pull request Feb 28, 2022
1 task
@ofek
Copy link
Sponsor Contributor Author

ofek commented Feb 28, 2022

CI failure due to: ipython/ipython#13554

noxfile.py Outdated
@@ -142,6 +150,8 @@ def test_all_packages(session):
"--show-capture=no",
"--net-pypiserver",
"--all-packages",
"--reruns=5",
Copy link
Member

Choose a reason for hiding this comment

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

Do we need this many? I’d start with 2.

Copy link
Sponsor Contributor Author

Choose a reason for hiding this comment

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

Done!

@cs01
Copy link
Member

cs01 commented Feb 28, 2022

Before we go to retries, we should look to understand the root cause of the problem. I would rather hold off on landing this before we try other methods, since this is adding more tech debt. I appreciate the PR and if you can’t root cause it, that’s fine, but I’d prefer creating an issue instead and closing this PR, especially because CI tests still failed.

@ofek
Copy link
Sponsor Contributor Author

ofek commented Feb 28, 2022

Basically, iPython needs to release the fix ipython/ipython#13554 (comment)

I think retries are still a useful thing to add, though it's up to you!

@uranusjr
Copy link
Member

From experience, subprocess (also os.fork and multiprocess which all share a same vein under the hood) sometimes just fail like this due to OS internal states, and I’ve yet to see anyone come up with a good solution to make this always work. Retry is the usual solution for this kind of things.

@cs01
Copy link
Member

cs01 commented Mar 6, 2022

From experience, subprocess (also os.fork and multiprocess which all share a same vein under the hood) sometimes just fail like this due to OS internal states, and I’ve yet to see anyone come up with a good solution to make this always work. Retry is the usual solution for this kind of things.

We have had zero of such issues with pipx so far. I just looked into the failures we're seeing a little, and the root cause is a repeatable python3.8/ipython issue. ipython/ipython#12677

I appreciate the PR, but I am going to close it since I believe it is trying to solve a problem that does not exist, and is adding tech debt.

@cs01 cs01 closed this Mar 6, 2022
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

Successfully merging this pull request may close these issues.

3 participants