java.lang.OutOfMemoryError: unable to create new native thread

Last modified by Scott Gagan on 2021/09/10 22:40

The information in this document applies to iSymphony 3.0.

Problem

iSymphony crashes or becomes unstable, and a message similar to the following appears in iSymphonyServer.err.log:

Exception in thread "<threadname>" java.lang.OutOfMemoryError: unable to create new native thread

Temporary Workaround

As a temporary workaround, restarting the iSymphony server will typically allow you to continue using the panel. However, it is unlikely to solve any underlying issues that caused the error in the first place, so you will likely run into the same problem again at some point in the future. See Starting And Stopping The iSymphony Server for details on restarting iSymphony, and see below for information about troubleshooting the actual problem to ensure it doesn't happen again.

Solution

This error message indicates that iSymphony has tried to create a new thread, but was unable to do so due to the operating system running out of thread handles. We have made some improvements to thread handling after the public release of version 3.0.3 which typically resolve this issue. A development build (3.0.3b1577) including these changes can be found in our Downloads Archive, under the 'Development Builds' header. Please be sure to read the warnings under that section header when upgrading to a development build. 

If upgrading to build 1577 still does not resolve the issue, we have a patched version of a jar that has additional improvements that should resolve the issue. However, we strongly recommend that you initially upgrade to version 1577, and see if that resolves your issue first before trying the patched jar.

Do not attempt to use this patched jar with any version of iSymphony other than 3.0.3b1577, including 3.0.3b1564 or other versions of 3.0.3. It is not compatible, and will prevent iSymphony from functioning if you attempt to do so.

To install the patched jar,

  1. Shut down iSymphony. See Starting, Stopping and Restarting the Server for details.
  2. Back up the following file to a location outside the main iSymphony folder directory:

    /opt/isymphony3/server/modules/pbx/plugins/com.xmlnamespace.panel.client.pbx_1.0.0.jar

    If the old jar is in the /opt/isymphony3/server/modules/pbx/plugins/ directory after copying the new jar, it may prevent iSymphony from starting. Ensure that the backed up copy of the old jar is in an entirely different folder.

  3. Download the modified jar: com.xmlnamespace.panel.client.pbx_1.0.0.jar
  4. Place it into the same folder (/opt/isymphony3/server/modules/pbx/plugins). 
  5. Start iSymphony again.

Related articles

Unknown macro: contentbylabel. Click on this message for details.

   
iSymphony