Frequent “Slow clock tick error” on EMS side

“Slow clock tick error” on EMS side is a common issue for most of the companies which are using EMS for transport. The reason for this error is that EMS server gets very busy and the processing of messages is delayed.
We are seeing this frequent error message in the EMS logs and here is an example of the error from the EMS server:
• Error stack trace:

The number 30 indicates the delay when the timer thread is behind the current time. 30 seconds is the time difference.

 

Our Implementation:

 

EMS server in our system is configured to use LDAP credentials for connecting. Because of that we have implemented custom JAAS java class which will allow our external clients to user their LDAP credentials for log in to the EMS server.

    • JAAS Config file:


If some of the external user is NOT authenticated for a longer time (hours or days) on the EMS server and tries to log in, we conclude that the “Slow clock tick” error is generated in the EMS log file during user authentication on the EMS server via JAAS.

interworks, TIBCO Enterprise Message Service, Lightweight Directory Access Protocol, JAAS Login Module, JAAS, LDAP, Client

 

Solution

 

To eliminate this error we must do couple of changes in JAAS config file and also in the java class. So in the java class “LDAPLoginModule” we added logic to support caching of user information for better performance. Therefore EMS does not need to connect to LDAP server each time a user is trying to connect to EMS. Also we have updated the java class to use filters (user/group) to narrow the search scope to LDAP.

    • JAAS Config file Updated: