Memory usage #175
Replies: 1 comment
-
|
fixed with #176. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi HTTP-2 community 👋
I'm writing this as a discussion, rather than an issue, because I'm not certain where my problem is. I've had a persistent memory leak in one of my running applications for at least a few months now and I've been sporadically trying to zero in on the problem.
It appears that I have several large Hash objects that are being held by HTTP2::Client.
This dump was taken from my app not very long after boot, so the actual size here is not that egregious, but I've been able to tell by taking a series of heap dumps that these are the objects that are growing over time.
So I started looking inside
HTTP2::ClientandHTTP2::Connectionfor possible culprits and I noticed@streamsand@recently_closed_streams. It looks like there is a cleanup routine for@recently_closed_streamsbut I wasn't able to find where items are removed from@streams.It seems like streams should eventually be removed from
@streams, possibly when they're closed? I'm not familiar with the requirements of an HTTP2 client so I'm just guessing. Is this not a problem? Or maybe they are being removed and I just wasn't able to find where.I'd appreciate any thoughts anyone has about the memory growth of those hashes. I should also say that I am using this as part of HTTPX which is using the
Persistentplugin (via the Faraday adapter). It's being used to communicate to an Elasticsearch instance.Thanks for your time!
Beta Was this translation helpful? Give feedback.
All reactions