Tech Tip : CA Single Sign-On : Java SDK Agent Initialization Delays

Document created by Osarobo_Idehen Employee on Apr 7, 2017
Version 1Show Document
  • View in full screen mode

Issue:


Custom Java Agent based on is taking about 3 seconds per policy server for initialization which is too long.

By checking the Agent log (stdout) with full debugging (-Dcom.ca.siteminder.sdk.agentapi.enableDebug=true) we can see :

 

10:33:05.125 [http-bio-18080-exec-9] SMTRACE: SmAgentTcpTransport, newInstance, Using SmAgentTcpTransport class

10:33:08.126 [http-bio-18080-exec-9] SMTRACE: SmAgentTliSession, setup, Initiating TLI handshake

Environment:

 

SDK : 12.52SP1CR06 Policy Server: 12.52SP1CR6 on Solaris 10 (SPARC)

Cause:


The delay of about 3 seconds occurs in the Pure Java API and is caused by a change to NON-BLOCKING socket usage.

After a non blocking connect call, the code checks every 3 seconds for completion. If it is still failing after 5x3 seconds it will mark the connection as failed.

The default connectionTimeout is 3000 ms.

Resolution:


The default connectionTimeout is 3000 ms but it can be modified by passing the following parameter into the JVM at runtime:


-DNONBLOCKING_CONNECTION_SLEEP_TIME=1000

 

Example of startup agent (With debug and non blocking connection) :

 

java -Dcom.ca.siteminder.sdk.agentapi.enableDebug=true -DNONBLOCKING_CONNECTION_SLEEP_TIME=1000 myClass

 

 

 

KD : TEC1197721

Attachments

    Outcomes