My server has 128GB of ram, the index is 22GB large. It seems the memory consumption goes up on every query and the garbage collector will never free up as much memory as I expect it to. The memory consumption looks like a curve, it eventually levels off but the old gen is always 60 or 70GB. I have tried adjusting the cache settings but it doesn't seem to make any difference.
Is there something I'm doing wrong or is this expected behavior? Here is a screenshot of what I see in jconsole after running for a few minutes: http://i51.tinypic.com/2qntca1.png Here is a 24 hour period of the same data taken from a custom jmx monitor: http://i51.tinypic.com/2vcu9u8.png The server performs pretty much as good at the beginning of this cycle as it does at the end so all of this memory accumulation seems to not be doing anything useful. I am running the 1.4 war but I was having this problem with 1.3 also. Tomcat 6.0.18, Java 1.6.0. I haven't gone as far as doing any memory profiling or java debugging because I'm inexperienced, but that will be the next thing I try. Any help would be appreciated. Thanks, -Jeff