I have 32 GB RAM available on server(alfresco and solr on same instance) and i have allotted dedicated 24 GB in java opts in tomcat/bin/setenv.sh and tomcat/scripts/ctl.sh file.
Due to insufficient memory solr stops working, when stopping server it has generated hs_err_pid1-3-9.log file.
Error file contains below logs:
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 24984682496 bytes for committing reserved memory.
# Possible reasons:
# The system is out of physical RAM or swap space
# In 32 bit mode, the process size limit was hit
# Possible solutions:
# Reduce memory load on the system
# Increase physical memory or swap space
# Check if swap backing store is full
# Use 64 bit Java on a 64 bit OS
# Decrease Java heap size (-Xmx/-Xms)
# Decrease number of Java threads
# Decrease Java thread stack sizes (-Xss)
# Set larger code cache with -XX:ReservedCodeCacheSize=
# This output file may be truncated or incomplete.
# Out of Memory Error (os_linux.cpp:2640), pid=10309, tid=0x00007f541a1b8700
# JRE version: (8.0_131-b11) (build )
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode linux-amd64 compressed oops)
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
Can we allocate dedicated memory to solr? If yes, where to configure the same?
I had gone through solrnodes memory ducumentation, as per calculation only solr requires 27 GB memory.
I have 1 million documents in repository.
After every server restart, solr starts working and memory utilization continues more than 90% and after sometimes due to insufficient memory solr stops working.
Solrnodes-memory-calculation would provide how much memory is needed to solr depending on various aspects. As you have already gone through this doc, 27GB is required memory that you have calculated. If calculation is correct then you would require that much memory.
It would be wise to separate the solr and alfresco on different nodes.