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
Linkerd-proxy v2.148.0 emits "possible future leak" warning message #6556
Comments
@Wenliang-CHEN interesting! We've never seen this before, as far as I know. The log is emitted here and is only used here -- and this error seems to indicate that when trying to notify a channel that an error occurred, the receiver has already been dropped. This looks suspiciously similar to #6086 -- some sort of notification/visibility race. If there are no functional problems other than the logging, I'd suggest running with a proxy-log-level like Can you share details about the hardware/OS platform you're running on including at least the CPU arch, number of cores, and kernel version? Also can you share the proxy's INFO logs during startup -- I'm mostly curious whether we're using a multi-threaded executor in the proxy in this case or whether this can be hit using a single-threaded executor. |
@bluejekyll Do you have any suggestions at what we can do to get more insight into this? Why does this error suggest a future leak? Are there any known bad access patterns that could trigger this in user code? Or would this log message indicate a bug in trust-dns? |
It’s been a while that I’ve looked into that area. There’s probably some refactoring we could do to ensure that this case doesn’t happen. I think the concern is that some of the Futures returned on a request are not executed, ie are dropped before the response is received. The concern was that a memory leak would happen in a case where the response isn’t polled from the request future. |
@olix0r its entirely possible that there is not issue here and we only need to remove the log line, that would require some time to do that review. |
@olix0r Cool, please find the info below: About the OS, we use For the Kernel version I got this
A sample of linkerd-proxy startup logs looks like this
It looks like it is a single-threaded executor. |
@Wenliang-CHEN Thanks! We'll try to do some more investigation here. In the meantime, I'd suggest disabling these logs by configuration. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions. |
Bug Report
What is the issue?
Hey guys, we just upgraded to linkerd-proxy 2.148.0 to try out the new features. Everything works fine, but we realized that the linkerd-proxy keeps emitting logs regarding "possible future leak".
The logging frequency is around 20 logs/second from a service with around 400rps.
A full log body looks like below:
linkerd check
outputEnvironment
control plane: v2.10.0
linkerd-proxy: v2.148.0
linkerd-init: cr.l5d.io/linkerd/proxy-init:v1.3.9
The text was updated successfully, but these errors were encountered: