Our elasticsearch processes have been slowly consuming memory until a kernel OOM kills it. Details are here:
https://github.com/elastic/elasticsearch/issues/26269 <https://github.com/elastic/elasticsearch/issues/26269> To summarize: - Explicit GC is enabled - MaxDirectMemorySize is set - Total memory usage for the process is roughly heap (30G) + mmap'd (unbounded) + 1-2G (meta space, threads, etc) The crowd is suggesting "Don't worry. You want to use all that memory." I understand that sentiment except for: - The process eventually gets OOM killed. - I need to support multiple processes on same machine and need a more predictable footprint. It seems to be relatively common knowledge that direct byte buffers require a GC to trigger their freedom. However, full GC's are happening but not resulting in a reduction of resident mmap'd memory. Any pointers to source code, settings, or tools are much appreciated. Thanks! -- Erik