Cluster commands timeout (Legacy KB ID CNC TS13121 )

Document ID : KB000052429
Last Modified Date : 14/02/2018
Show Technical Document Details
The NH_RCS_MSG_TIMEOUT variable can be increased to allow more time for the remote cluster member(s) to respond to the RCS message using standard environmental variable modification practices: 


How to Set or Change eHealth Environment Variables-NT


How to Set or Change eHealth Environment Variables-Unix


The default value of the variable is 5 seconds and  valid values are 1 up to any positive integer.

Care must be taken however when modifying this value, as changes can have a significant affect on overall cluster performance.


Please see  What impact do changes to the NH_RCS_MSG_TIMEOUT or NH_RCS_RETRY_QUEUE_TIME variables have on cluster performance  for more information regarding the potential impact.



Related Issues/Questions:
Cluster commands timeout
Unable to successfully run cluster update commands
Cluster errors appear in eHealth console
Error: "Error nhiRmtOut Pgm nhiRmtOut: Rcs timed out waiting for an ack for message 'CuStsIpcMsg'. Current state is 'needAck'.."
Error: "Rcs timed out waiting for an ack for message value. Current state is state"

Problem Environment:
eHealth

Causes of this problem:
RCS timeout messages indicate that the server was unable to successfully communicate with a cluster member(s).


The eHealth server communicates with the cluster members via an RCS - TCP connection made on ports 5050 and 50501 via the nhiRmtIn and nhiRmtOut processes.


        nhiRmtIn  ( remote message transfer - In )  : port 5050
        nhiRmtOut ( remote message transfer - Out ) : port 5051



After eHealth opens an RCS connection, it passes the necessary messages to the remote cluster member over that connection. The remote system returns acknowledgements for the messages that it receives. If eHealth does not receive an acknowledgement within the specified timeout window, an RCS timeout will occur, and the following message will be seen:


"Rcs timed out waiting for an ack for message value. Current state is state"


This error indicates that the RCS processes need more time to receive acknowledgements from the remote systems.

The timeout value is controlled via the NH_RCS_MSG_TIMEOUT environmental variable. eHealth waits for the time specified by NH_RCS_RETRY_QUEUE_TIME, then attempts to re-establish the RCS connection and resend the message.




(Legacy KB ID CNC TS13121 )