Increasing the number of threads available on Linux


If FAS/MB fails with java.lang.OutOfMemoryError: unable to create new native thread errors seen in the server.log then you may need to increase the number of threads available to the FAS/MB user at the OS level.


Checking the max user processes (thread) limit

You can check the current number by logging in as the fas_user and running the command ulimit -u

[myfasuser@cs-cafex ~]$ ulimit -u

Checking the current number of threads used

The following command will output the number of processes for the myfasuser (example) user. Note: Threads are counted as processes in linux

top -b -H -u myfasuser -n 1 | wc -l

If the number is less than 200 try without the -H flag as the Thread toggle may have already been set in top

top -b -u myfasuser -n 1 | wc -l

The highest of these 2 outputs indicates the number of myfasuser processes

A base line Cafex installation will typically use around 700 threads in a quiescent state and this figure will rise over time with traffic and the full product set deployed. 


Increasing the max user processes (thread) limit

To create extra process capacity on your system edit the /etc/security/limits.conf file to add/modify the lines for nproc...

myfasuser        soft  nproc 4096
myfasuser        hard  nproc 4096

For these values to take effect

  1. Stop the all services run by the myfasuser: fas, mb, etc..
  2. Exit your all your session windows
  3. ssh back onto the box and restart the myfasuser user services





Comments are disabled on these articles if you require help contact

Have more questions? Submit a request