CAF start returns "initialisation failed" error on Linux

Document ID : KB000020088
Last Modified Date : 14/02/2018
Show Technical Document Details

Symptoms:

On Linux, all caf commands like "caf status", "caf stop", "caf setserveraddress" are returning "initialisation failed" .

In the TRC_CCNFAGENT_*.log the following errors are observed :

110713-06:46:51.7152010L|022248|f6718b90|CcnfAgentW|cfOSServices    |cfOSServices        |000000|ERROR  | CCFOSEvent::Init: Unable to create semaphore for global event evt_DoneE5F27766-E9E4-11E2-8187-8570C3B55EBD
110713-06:46:51.7152490L|022248|f6718b90|CcnfAgentW|CcnfAgentWorker |ccnfshmem.h         |000240|ERROR  | ### Create(): no event 'DoneE5F27766-E9E4-11E2-8187-8570C3B55EBD' ###
110713-06:46:53.2196770L|022248|f6718b90|CcnfAgentW|CcnfAgentWorker |cmsgshm.cpp         |000748|ERROR  | ### FactoryThread(): can't create shm block size 2040 ###
110713-06:46:56.6214340L|022248|f6718b90|CcnfAgentW|cfOSServices    |cfOSServices        |000000|ERROR  | CIpcCommon::GetIPCKey: failed to create new semaphore: sem_evt_DoneE8E192A4-E9E4-11E2-8187-8570C3B55EBD: (28) No space left on device

 

Environment:

All supported versions of Linux 

CA Client Automation - All Versions

 

Cause: 

The above log lines indicate that the semaphore limit "maximum number arrays" has been reached and no new semaphore can be created. This causes a problem in starting the ccnfagent plugin.

 

Resolution:

1. Check what the semaphore limits are set to, 

    Following command returns the semaphore limits :

           ipcs -l

     As a solution we could change the semaphore limit in order to increase the "maximum number arrays".

NOTE: This is generally done in the /etc/sysctl.conf or with the sysctl command. Please see the appropriate man pages or check with your OS vendor

 

2. Another solution is to configure ccnfagent to not use semaphores but Session messaging :

  1. Create a file "usemessenger" in /opt/CA/DSM/Agent/CCNF
  2. Kill the caf process
  3. caf start