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

tests/runtests.pl: use default post command delay of 100ms #7833

Closed
wants to merge 1 commit into from

Conversation

mback2k
Copy link
Member

@mback2k mback2k commented Oct 8, 2021

Although flushing the output buffers reduced the flakiness
of the curl test suite on Windows already, some tests were
still randomly failing. This is another attempt to fix it.

Follow up to #7530

@mback2k mback2k added tests Windows Windows-specific labels Oct 8, 2021
@mback2k mback2k self-assigned this Oct 8, 2021
@jay
Copy link
Member

jay commented Oct 8, 2021

It will be interesting to know the result of this, however I don't think it's a good idea to actually put it in.

@mback2k mback2k force-pushed the win-tests-delay branch 2 times, most recently from 4caaecb to da23eb1 Compare October 13, 2021 18:20
@mback2k
Copy link
Member Author

mback2k commented Oct 14, 2021

It seems like this is actually helping, but on the other side some test runs are now timing out. I will have to dive deeper into the timings.

The only remaining errors are either unrelated or those server unexpectedly alive errors which I am also trying to work on.

I also would like to avoid putting this in, but after countless tries of adding/forcing flushing behavior between the Perl/Bash/Binary process chains in our test suite, it still seems like Windows is not behaving correctly about this.

Unfortunately my observation after all these months is that flakiness on Windows is caused by two things a) missing lines in process output and b) test servers being unexpectedly alive and therefore not setup correctly.

@mback2k mback2k force-pushed the win-tests-delay branch 2 times, most recently from e3a0db6 to a358780 Compare November 1, 2021 11:15
Although flushing the output buffers reduced the flakiness
of the curl test suite on Windows already, some tests were
still randomly failing. This is another attempt to fix it.

Follow up to curl#7530
mback2k added a commit to mback2k/curl that referenced this pull request Feb 26, 2022
mback2k added a commit to mback2k/curl that referenced this pull request Feb 27, 2022
mback2k added a commit to mback2k/curl that referenced this pull request Mar 5, 2022
mback2k added a commit to mback2k/curl that referenced this pull request Mar 5, 2022
mback2k added a commit to mback2k/curl that referenced this pull request Mar 6, 2022
On Windows data can be lost in buffers in case of abnormal program
termination, especially in process chains as seen due to flaky tests.
Therefore flushing all buffers manually should avoid this data loss.

In the curl tool we play the safe game by only flushing write buffers,
but in the testsuite where we manage all buffers, we flush everything.

This should drastically reduce the CI and testsuite flakiness.

Supersedes curl#7833 and curl#6064
mback2k added a commit that referenced this pull request Mar 13, 2022
On Windows data can be lost in buffers in case of abnormal program
termination, especially in process chains as seen due to flaky tests.
Therefore flushing all buffers manually should avoid this data loss.

In the curl tool we play the safe game by only flushing write buffers,
but in the testsuite where we manage all buffers, we flush everything.

This should drastically reduce Windows CI and testsuite flakiness.

Reviewed-by: Daniel Stenberg

Supersedes #7833 and #6064
Closes #8516
@mback2k
Copy link
Member Author

mback2k commented Mar 15, 2022

Closing in favor of #8516.

@mback2k mback2k closed this Mar 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tests Windows Windows-specific
Development

Successfully merging this pull request may close these issues.

2 participants