-
-
Notifications
You must be signed in to change notification settings - Fork 636
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
TestPantsDaemonIntegration.test_pantsd_sigquit
is flaky
#7572
Labels
Comments
jsirois
added a commit
to jsirois/pants
that referenced
this issue
Apr 15, 2019
jsirois
added a commit
that referenced
this issue
Apr 16, 2019
jsirois
added a commit
to jsirois/pants
that referenced
this issue
Mar 25, 2020
This brings our skip count up from 7 python and 2 rust to 25 python and 4 rust, hopefully in the name of stability as outlined in pantsbuild#9386. Also updates the How to Contribute docs with a pointer to pantsbuild#9386 for the latest procedure. Includes flaky tests from: pantsbuild#9313 pantsbuild#9312 pantsbuild#8679 pantsbuild#8678 pantsbuild#8520 pantsbuild#8520 pantsbuild#8520 pantsbuild#8405 pantsbuild#8193 pantsbuild#8171 pantsbuild#7836 pantsbuild#7622 pantsbuild#7573 pantsbuild#7572 pantsbuild#7554 pantsbuild#7547 pantsbuild#7457 pantsbuild#7168 pantsbuild#7149 pantsbuild#6838 pantsbuild#6829 pantsbuild#6787 pantsbuild#6114 [ci skip-jvm-tests] # No JVM changes made.
jsirois
added a commit
that referenced
this issue
Mar 25, 2020
This brings our skip count up from 7 python and 2 rust to 25 python and 4 rust, hopefully in the name of stability as outlined in #9386. Also updates the How to Contribute docs with a pointer to #9386 for the latest procedure. Includes flaky tests from: #9313 #9312 #8679 #8678 #8520 #8520 #8520 #8405 #8193 #8171 #7836 #7622 #7573 #7572 #7554 #7547 #7457 #7168 #7149 #6838 #6829 #6787 #6114
stuhood
added a commit
that referenced
this issue
Nov 24, 2020
### Problem In order to re-enable concurrent runs in #7654, we can no longer kill the server in order to cancel an ongoing run when the client exits (as that would kill all runs rather than just the run associated with the single cancelled client). Instead, we need to gracefully terminate ongoing runs when a `pantsd` client goes away. ### Solution Using [new facilities](https://github.com/stuhood/nails/commits/9e805a20948a04aea6c082efbe5a9d95b7b71e31) in `nails` `0.8.0`, we detect that a client has `shutdown` the write half of the connection (or otherwise gone away, via heartbeats), and set a cancellation signal on the `Session` for the associated run. When a `Session` has been marked cancelled, the server will cleanly exit the UI loop, and interrupt any `InteractiveProcess` instances. The client now uses Rust signal handling to intercept Ctrl+C to decide to cancel the run, and will exit the client entirely on the second signal. Because of this, the `ExceptionSink` is now manually installed, and only in locations that are running a `Scheduler` in-process: the `pantsd` server, or a no-`pantsd` local run. ### Result In general, the server should stay up much longer, because the client no longer kills it in order to handle Ctrl+C. Fixes and unskips some tests related to Ctrl+C handling, and deletes some others. Should cause interactive processes to be consistently interruptible without killing the server. In another PR we will use this same signal to gracefully cancel any work that was happening in the `Graph`, but since only `InteractiveProcess` or `Console` instances can interact with the UI, that change does not block landing this. Fixes #7554, fixes #7572, fixes #7547, fixes #7457, fixes #7514. [ci skip-build-wheels]
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Seen in nightly cron Ci job on 'Integration tests - shard 1 (Py3.7 PEX)' shard:
The text was updated successfully, but these errors were encountered: