Attempt to fix DuplicateAndClose_TcpServerHandler flaky test#103161
Merged
rokonec merged 6 commits intodotnet:mainfrom Jun 12, 2024
Merged
Attempt to fix DuplicateAndClose_TcpServerHandler flaky test#103161rokonec merged 6 commits intodotnet:mainfrom
rokonec merged 6 commits intodotnet:mainfrom
Conversation
Contributor
|
Tagging subscribers to this area: @dotnet/ncl |
Member
Author
|
Related failure log snapshot: |
wfurt
reviewed
Jun 7, 2024
src/libraries/System.Net.Sockets/tests/FunctionalTests/SocketDuplicationTests.cs
Show resolved
Hide resolved
Member
|
/azp run runtime-libraries-coreclr outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
This was referenced Jun 10, 2024
Member
Author
|
/azp run runtime-libraries-coreclr outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
ManickaP
reviewed
Jun 11, 2024
src/libraries/System.Net.Sockets/tests/FunctionalTests/SocketDuplicationTests.cs
Show resolved
Hide resolved
Open
3 tasks
Member
Author
|
/azp run |
|
You have several pipelines (over 10) configured to build pull requests in this repository. Specify which pipelines you would like to run by using /azp run [pipelines] command. You can specify multiple pipelines using a comma separated list. |
Member
Author
|
/ba-g After careful review I am quite sure failing tests are not related to changes of this PR |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Context:
We have noticed failure of DuplicateAndClose_TcpServerHandler test in Job https://dev.azure.com/dnceng-public/public/_build/results?buildId=696224&view=logs&j=cb76e204-ba8f-557d-eba6-9896b4f24865
Changes made (changes are isolated into commits for easier review/revert):
Ensure RemoteInvokeHandle is disposed - this is ensuring that Dispose of
RemoteInvokeHandlewill be called during test run, otherwise it would be called in Finalize and as it throws, it would shutdown whole xunit runner.Make RunCommonHostLogic synchronous - after discussion with original author we decide reverting
RunCommonHostLogicback to synchronous execution for simplicity reasons.Document RemoteInvokeHandle DisposeAsync intent.
Replace namedpipe IPC by Socket IPC - as there is theory that namedpipe implementatation is root cause of this flakiness, I have decided to rule it our by replacing it by simple
Socketbased IPC. IPC is required because remote code has to start before socket is disconnect, as socket disconnection requires process ID of the other process.Testing:
locally by unit tests