Diagnosing and dealing with memory problems
As with every application, written in Java or not, sometimes there are memory problems. When dealing with Solr, these problems are usually related to the amount of data you have and your queries. These problems usually happen when the heap size is too low or your data is very large and not spread enough. This recipe will show you how to quickly deal with these problems and what to do to avoid them.
How to do it...
So, what do you do when you see an exception as follows:
SEVERE: java.lang.OutOfMemoryError: Java heap space
First of all, you can do something to make your day a bit easier—you can add more memory that Java virtual machine can use, of course, if you have some free physical memory available in your system. To do this, you need to add the Xmx
and Xms
parameters to the startup script of your servlet container (Apache Tomcat or Jetty). This is how it is done for the Solr 4.x deployment:
java –Xmx2g –Xms2g –jar start...