Q: Why did SuperMap iServer running process report the following error: "java.lang.OutOfMemoryError: unable to create new native thread"?

A: In SuperMap iServer, it will create a real physical thread in the operating system by the thread pool. In some small memory machine, when the amount of releasing and accessing is large to process the high concurrent requests, the memory space required by operating system creating a physical thread will compete with the Java virtual machine. This causes the thread creation to fail (The largest Java virtual machine memory allocated by iServer 32 bit package is 512M and the maximum threads number is 300). It can be solved in the following way:

(1) Reduce the memory allocated to the Java virtual machine; modify the Java virtual machine parameter. For example, in windows iServer package, modify the JAVA_OPTS of %SuperMap iServer_HOME%/bin/catalina.bat, and set tne -Xmx512m to smaller;

(2) Reduce the active threads number in the tomcat connection pool; Modify the node maxThreads of %SuperMap iServer_HOME%/conf/server.xml to smaller.


04 Jul,2019
Tags:iserver

More iServer FAQ