-
Notifications
You must be signed in to change notification settings - Fork 8.9k
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
don't wait to expire dead endpoints if exiting #964
Conversation
return | ||
select { | ||
case c.deadEndpoints <- pkiID: | ||
case <-c.exitChan: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe return here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sure.
That would be the other flake I mean. /ci-run |
AZP build triggered! |
flake is https://jira.hyperledger.org/browse/FAB-16233 /ci-run |
AZP build triggered! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please keep this pull request focused and not have in it commits that are unrelated
Change-Id: I4253ab37d34ae90d60532f7769cccd751c799fdd Signed-off-by: Morgan Bauer <mbauer@us.ibm.com>
moved to separate PR #983. I would suggest merging that one first if this keeps flakin. |
Type of change
Description
deadEndpoints channel gets filled up. Exit occurs, and deadEndpoints is not drained. We can avoid putting more into the channel and creating hanging goroutines (many many many of them, this fills up my memory). There are still messages that get dropped on the floor sometimes that will cause a different hang.
Additional details
Seeing what looked like unbounded memory usage when running this in a loop.
There are anywhere between 80 and 600 messages for each side of the connection.
Each iteration through the loop results in a timer being created.
Avoid that and create one at the test start.
Related issues
FAB-17451 I reported this from #954 (comment)