-
-
Notifications
You must be signed in to change notification settings - Fork 5
Always set _closed future in StdoutWriterProtocol.connection_lost #24
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
base: master
Are you sure you want to change the base?
Conversation
PipelineRetry |
Python < 3.12 used to have a bug in |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #24 +/- ##
==========================================
+ Coverage 79.20% 80.49% +1.29%
==========================================
Files 3 4 +1
Lines 1433 1528 +95
==========================================
+ Hits 1135 1230 +95
Misses 298 298 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Yup. I did mention that commit already in QubesOS/qubes-issues#9779 (comment). f488ef1 added the |
OpenQA test summaryComplete test suite and dependencies: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2025060520-4.3&flavor=pull-requests Test run included the following:
New failures, excluding unstableCompared to: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2025031804-4.3&flavor=update
Failed tests17 failures
Fixed failuresCompared to: https://openqa.qubes-os.org/tests/132953#dependencies 14 fixed
Unstable testsPerformance TestsPerformance degradation:15 performance degradations
Remaining performance tests:57 tests
|
I took a bit deeper look at this, and first of all, this fix (as in - always setting |
Thanks for taking a closer look at this.
Good point. I misread that logic initially (Based on the comment I thought it wakes up the blocking writer, but actually it tests for Do you understand why that |
Not really, it was this way in asyncio.FlowControlMixin already. Looking at git history there, it used to be a single waiter, not a list. But still, it's not clear to me what that if was added back then, the commit message doesn't help much... (it survived a few refactors, initially was added here: python/cpython@355491d) |
Otherwise when the stdout stream is closed wait_closed will hang forvever. See QubesOS#24 for discussion about the exact intended behavior or WriterProtocol in this case. QubesOS/qubes-issues#9779
98d2086
to
16c94c6
Compare
It doesn't support -P yet. Work around it by changing the directory do /. split-gpg2 shouldn't depend on it.
Otherwise when the stdout stream is closed wait_closed will hang forever.
Also add tests that check that the service terminates correctly.
And add a fix of #25 for Ubuntu 22.04.
QubesOS/qubes-issues#9779