[Ala-portal] A little doubt about SOLR/JVM configuration

David.Martin at csiro.au David.Martin at csiro.au
Fri Oct 10 02:49:12 CEST 2014

Thanks Santi.

I've cc-ed the list as this is probably a common question. The memory allocation can be manipulated in the scripts [1].
On Debian (Ubuntu) machines this manipulates the config in this file:


and specifically the line:

JAVA_OPTS="-Xmx2g -Xms2g -XX:MaxPermSize=256m -Xss256k"

For production systems, if you have the ability to use more than 1 machine, I would recommend setting up SOLR on a separate machine. 
Theres a playbook for this here [2].

The biocache can point to a different SOLR server by changing the following property in /data/biocache/config/biocache-config.properties

# The URL of SOLR services. In the case of embedded SOLR (no for production), this could be a directory path instead


Dave Martin

[1] https://github.com/AtlasOfLivingAustralia/ala-install/blob/master/ansible/roles/tomcat/vars/main.yml
[2] https://github.com/AtlasOfLivingAustralia/ala-install/blob/master/ansible/solr-standalone.yml

From: Santiago Martinez de la Riva [sama at gbif.es]
Sent: 09 October 2014 20:14
To: Martin, Dave (NRCA, Black Mountain)
Subject: RE: [Ala-portal] A little doubt about SOLR/JVM configuration

Hi Dave,

Im sure that with you experience you can help me with this topic. Now I'm having this problem with solr and jvm:

ERROR SolrCore org.apache.solr.common.SolrException: Error while processing facet fields: java.lang.OutOfMemoryError: Java heap space

I think that I have to config JVM_ARG to assign more memory to the Java heap, but if I'm executing JAVA in a VM with 32 GB and SOLR is consuming more or less 14GB with 10 millions of records. What do you recommend me to assign to Java Heap.

Export JVM_ARGS="-Xmx YYYY m -XX:MaxPermSize= ZZZZ m"

Thanks in advance,

More information about the Ala-portal mailing list