I have an index that's approximately 875MB. I'm using JBoss Application Server 4.04 w/ Apache HTTP Server 2.2. My min/max JVM size is: 128MB/512MB. On initial startup, everything works fine. I'm able to search (although it takes a while doing the first search because it's loading the index into memory - because I'm sorting on a field)... everything's fine and dandy. But if I stop the application and redeploy, I get an OutOfMemoryError when I search (when the index gets loaded into memory again). I've tried this on both Java 5 and Java 6.
When I stop the application, I made sure (or at least to the best of my knowledge) that I close all searcher/reader/writer. I'm pretty sure that there are no locks on the index. I've tried increasing the maximum JVM size to 1GB. Now I can redeploy the application twice before it gives me the OutOfMemoryError. It seems like the JVM isn't garbage collecting the index. So is this a JVM issue where the index is still in memory and it isn't being garbage collected? Or am I not closing my searcher/reader/writer correctly? Has anyone else experienced this? Thanks, Van