[
https://issues.apache.org/jira/browse/TS-3554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14554377#comment-14554377
]
Susan Hinrichs commented on TS-3554:
------------------------------------
Summary of investigations from yesterday.
[~reveller] reports 6GB increase in memory usage on each reload of his 6K long
ssl_mulitcert.config file.
I experimented with a 1K long ssl_multicert.config file and 5.3.x with the
limit_session_cache_alloc.diff and the ts-3554-53-2.diff patchs. I also made
more changes to enable the gperf tools heapchecker
(http://gperftools.googlecode.com/svn/trunk/doc/heap_checker.html) around the
ssl_multicert.config reload logic.
If I reloaded without any traffic passing through, the heapchecker reported no
leaks and the VmSize increased by about 20KB sometimes.
If I passed traffic through without any reloads, the VmSize stayed stable.
This wasn't a huge traffic load. I ran "ab" with 4-6 concurrency to a constant
URL.
However, if I reloaded and passed traffic, I saw a VmSize increase of 25-30 MB
per reload. Still no real memory leaks reported by the heap checker, but the
number of "live" objects reported increased with each reload. So I assume that
the "leak" is objects left in a table somewhere (perhaps in openssl?).
So if we both reload and have some traffic passing through, I see a memory size
increase. Not as big as [~reveller] reported, but substantial. He also claims
that there was no traffic going through. But perhaps there was a little bit of
traffic passing through but not the full production load?
Next step is to figure what theses "leaked" but live objects are.
> ATS memory leak reloading ssl_multicert.config with many ssl cert configs
> -------------------------------------------------------------------------
>
> Key: TS-3554
> URL: https://issues.apache.org/jira/browse/TS-3554
> Project: Traffic Server
> Issue Type: Bug
> Components: Configuration, Core, SSL
> Reporter: Steven Feltner
> Assignee: Susan Hinrichs
> Fix For: 6.0.0
>
> Attachments: limit_session_cache_alloc.diff, ts-3554-53-2.diff,
> ts-3554-53.diff
>
>
> ATS will consume all available memory on a server with 128GB of RAM.
> @shinrich suspects it may be due to CertLookup table not being freed on a
> config reload.
> Our current process:
> - New cert comes in
> - ssl_multicert.config and remap.config updated
> - traffic_line -x
> This reload could occur as often as every 3 mins with 5000+ certs configured.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)