000023065 - Admingui hangs when trying to perform a search

Document created by RSA Customer Support Employee on Jun 14, 2016Last modified by RSA Customer Support Employee on Apr 21, 2017
Version 2Show Document
  • View in full screen mode

Article Content

Article Number000023065
Applies ToRSA ClearTrust 5.5.3 Entitlements Server (EServer)
Issue"Queueing request"
"Failed to get connection, attempt 1"
"sirrus.da.exception.DataStoreException: Giving up.
    at sirrus.da.util.ConnectionManager.getConnectionObject(ConnectionManager.java:740)
    at sirrus.da.util.ConnectionManager.getConnectionObject(ConnectionManager.java:531)
    at sirrus.da.sql.util.SQLConnectionManager.getConnection(SQLConnectionManager.java:95)"
CauseIt has been reported that under some circumstances, admingui stops operating (browser indefinitely waits for an answer) after performing a search, like a user search.

A possible cause for such a problem is an exhaustion of available datastore connections. Datastore connections are released back to the connection pool only when cached search results are disposed of.

This situation can occur when a number of CT administrators (or admin API applications) perform a search (like a user search through admingui) concurrently.

In order to diagnose this problem, the debugging related lines in eserver.sh should look like this (on Unix systems):

# Uncomment the following variables to turn on extra logging / debugging
DEBUG="-DDEBUG=DAL_CONN"
# Note: if you wish to see standard out, set OUTFILE=`tty`
OUTFILE=$CT_HOME/logs/eserver-$DATE.out

On windows systems, the debug section of eserver.bat should look like this:

:debug
set DEBUG="-DDEBUG=DAL_CONN" -DDEBUG_FILE=c:\eserver-debug.log

After restarting the eserver, debugging information regarding the datastore connection pool will be written to the debug log.

Look for the following messages in the debug log:

"Queueing request"
"Failed to get connection, attempt 1"
"Got connection. Now free = 0, leased = 10"

ResolutionThere are at least 2 approaches in order to solve this problem:

1 - Increase the number of available datastore connections. As a guideline, the number of connections should be set to the maximum number of admingui users (administrators) and admin API applications that might perform a search at any one time.

or

2 - Disabling the results cache on the eserver will also solve this problem. Results of datastore queries will not be cached, causing the datastore connection to be immediately released to the pool. In order to disable the results cache you'll have to:

  • Contact customer support and ask for CT 5.5.3 HF 58 or newer.
  • In eserver.conf add the parameter "cleartrust.eserver.cache.search_result.enabled" and set it to false (also see HF 5.5.3.58 release notes for further details)
  • Restart the eserver
Legacy Article IDa31704

Attachments

    Outcomes