runtime: deflake TestFinalizerOrCleanupDeadlock - #81624
Open
servusdei2018 wants to merge 1 commit into
Open
servusdei2018 wants to merge 1 commit into
servusdei2018 wants to merge 1 commit into
Conversation
The TestFinalizerOrCleanupDeadlock/Panic tests were intermittently failing
with "stack unavailable" errors for the finalizer goroutine. This happens
because panic tracebacks are lock-free and do not stop the world. If the
finalizer is still transitioning to its select{} block when the panic
occurs, it is seen as running on another thread, preventing its stack
from being traced.
Add a 10ms sleep to ensure the finalizer goroutine has parked before the
main goroutine triggers the panic.
Fixes golang#79209.
Change-Id: Ib49f7ba1f23f3bd70ac5b0838567d0c37068fc2f
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The TestFinalizerOrCleanupDeadlock/Panic tests were intermittently failing with "stack unavailable" errors for the finalizer goroutine. This happens because panic tracebacks are lock-free and do not stop the world. If the finalizer is still transitioning to its select{} block when the panic occurs, it is seen as running on another thread, preventing its stack from being traced.
Add a 10ms sleep to ensure the finalizer goroutine has parked before the main goroutine triggers the panic.
Fixes #79209.
Change-Id: Ib49f7ba1f23f3bd70ac5b0838567d0c37068fc2f