CA Rapid App SecurityCA Advanced AuthenticationCA API Gateway
Issue/Introduction
At times CA Strong Authentication may not be able to access the configured database since the current established connections have been broken (due to a DB failure or due to a firewall or due to an intermediary device fronting the DB). CA Strong Authentication tries to recover the Connection Pool by cleaning up the all old connections and re-establishing the new connections. Any current request that is progress is replied with an INTERNAL_ERROR response.
Example of when marking a connection Pool as "Bad"
Tue Jul 17 15:25:00.208 2018 WARNING: pid 1160 tid 1952: 2: 0: ArDBPoolManagerImpl::isKnownFailure: Error state [08S01] is detected as known failure(type:0)! Tue Jul 17 15:25:00.208 2018 WARNING: pid 1160 tid 1952: 2: 0: ArDBPoolManagerImpl::reportQueryFailure: Query failure is detected as DBFO for primary DSN [ArcotDBDSN] and context [1]. Marking it bad.
Example of when marking a connection Pool as "Alive" after recovery
Tue Jul 17 15:25:00.458 2018 INFO: pid 1160 tid 1952: 2: 0: ArDBPoolManagerImpl::recoverPool: Connection succeeded for [primary] pool [ArcotDBDSN]. Marking it alive... 07/17/18 15:20:28.370 INFO MONITOR 00001496 0MONITOR - ArDBPool::createNewConnections: Pool [(primary)] is grown by [4] connections. Current total size is [4]. Current available size is [4]
Cause
DB failure or Connections dropped at intermediary device/firewall fronting the Database.
Environment
CA Strong Authentication and CA Risk Authentication related DB servers
Resolution
Recovery by design for known DBFO (Database Failover) codes.