Error too many open files is reported on the EMS server that is started by RHEL service

Error too many open files is reported on the EMS server that is started by RHEL service

book

Article ID: KB0081101

calendar_today

Updated On:

Products Versions
TIBCO Enterprise Message Service All

Description

When starting the EMS server using RHEL service, it will not pick up the limits value set in limits.conf file or ulimit command. As the limits.conf is read by pam_limits module during login sessions. The login session can be by ssh or through terminal. And ulimit command is used to set the limits of the shell. Only the process which gets spawned from the shell can get the value set by ulimit command.

Issue/Introduction

EMS server keeps reporting too many open files. But FD used by the EMS server is less than the value set in limits.conf file or ulimit command.

Environment

RHEL

Resolution

Please add LimitNOFILE=value to set the FD for the EMS server started by the RHEL service. For example:

=====
more tibcoems.service
[Unit]
Description=EMS server
After=network.target multi-user.target

[Service]
ExecStartPre=/bin/sleep 20
ExecStart=/opt/tibco/ems/8.3/bin/tibemsd64 -config "/GFS/tibco/emsconfig/tibco/cfgmgmt/ems/data/tibemsd-f01nsvl-aplte09.conf"
ExecStop=/bin/kill -HUP $MAINPID
Type=simple
LimitNOFILE=65535
PIDFile=/var/run/tibcoems.pid
User=tibcoemsuser
[Install]
=====