-
Notifications
You must be signed in to change notification settings - Fork 712
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
Probe reporter stuck #1576
Comments
Related? #881 |
After a first look to the goroutine dump, it seems like the deadlock is happening at the multiclient's (multi_client.go) mutex |
Nice! Thanks for looking into it. |
Yep, that's the problem, we are double locking a mutex:
All 0.15, 0.14 and master are affected. It's been present since at least ffa955a |
Having #943 would had made the diagnosis much easier |
@blaines Thank you for your patience and help! |
I may have spoken too soon. Multiclient invokes |
My initial analysis was wrong, now I think that there's something wrong with the goroutine wait when stopping a client. https://github.com/weaveworks/scope/blob/v0.14.0/probe/appclient/app_client.go#L137
Maybe the client gets stuck here https://github.com/weaveworks/scope/blob/v0.14.0/probe/appclient/app_client.go#L170 not releasing goroutine. |
This is what I believe happened:
To solve this:
|
After a conversation with @tomwilkie , looking at the app_client pointer ( Now the question is, why did the http request in |
Because the http client's connection is never registered, only the pipe and control connection :) |
The user (blaines at #weave-users Slack channel) is running Scope version 0.14 and the report publisher in one of his probes seems to be stuck.
Full context: https://weaveworks.slack.com/archives/weave-users/p1465510035000191
Scope probe logs: https://gist.github.com/blaines/db726bf232c411a863a5faab74f24b56
Scope probe goroutine dump: https://gist.github.com/2opremio/1fe38671faf74c59b248aba03ed40051
The text was updated successfully, but these errors were encountered: