Skip to content

Retry flaky tests#822

Closed
ofek wants to merge 3 commits into
pypa:mainfrom
ofek:flaky
Closed

Retry flaky tests#822
ofek wants to merge 3 commits into
pypa:mainfrom
ofek:flaky

Conversation

@ofek

@ofek ofek commented Feb 28, 2022

Copy link
Copy Markdown
Contributor

Motivation: #817 (comment)

@ofek ofek mentioned this pull request Feb 28, 2022
1 task
@ofek

ofek commented Feb 28, 2022

Copy link
Copy Markdown
Contributor Author

CI failure due to: ipython/ipython#13554

Comment thread noxfile.py Outdated
"--show-capture=no",
"--net-pypiserver",
"--all-packages",
"--reruns=5",

Copy link
Copy Markdown
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
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Done!

@cs01

cs01 commented Feb 28, 2022

Copy link
Copy Markdown
Member

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

ofek commented Feb 28, 2022

Copy link
Copy Markdown
Contributor Author

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
Copy Markdown
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

cs01 commented Mar 6, 2022

Copy link
Copy Markdown
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.

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