cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Deepanshu.Grover
AppDynamics Team (Retired)

The following error is seen inside the EUM Processor log file when the EUM Processor is not able to start:

 

| Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source. 
| at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1422) 
| at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:606) 
| at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:526) 
| at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:756) 
| at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:683) 
| ... 14 more 
| 
+---------------------------------------------------------------------------------------

28 Aug 2017 14:12:02.746 +0200 main SqlAppStore ERROR 
| Exception caught while querying application store: 
| SQL: select * from applications where is_active=? and is_enabled=? 
| Params: [N, Y] 
| java.sql.SQLException: Connections could not be acquired from the underlying database! 
| at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118) 
| at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:690) 
| at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140) 
| at com.appdynamics.eumcloud.data.sql.SqlDBManager.getConnection(SqlDBManager.java:69)
| at com.appdynamics.eumcloud.data.sql.SqlAppStore.runQuery(SqlAppStore.java:345) 
| at com.appdynamics.eumcloud.data.sql.SqlAppStore.findInactiveApps(SqlAppStore.java:161) 
| at com.appdynamics.eumcloud.data.cache.AccountAppCache.refreshInactiveAccounts(AccountAppCache.java:225) 
| at com.appdynamics.eumcloud.data.cache.AccountAppCache.initialize(AccountAppCache.java:194) 
| at com.appdynamics.eum.processor.utils.EUMProcessorHelper.setupAuthenticator(EUMProcessorHelper.java:89) 
| at com.appdynamics.eum.processor.EUMProcessorServerApplication.run(EUMProcessorServerApplication.java:160) 
| at com.appdynamics.eum.processor.EUMProcessorServerApplication.run(EUMProcessorServerApplication.java:111) 
| at io.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:42) 
| at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:76) 
| at io.dropwizard.cli.Cli.run(Cli.java:70) 
| at io.dropwizard.Application.run(Application.java:72) 
| at com.appdynamics.eumcloud.EUMProcessorServer.main(EUMProcessorServer.java:40) 
| Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source. 
| at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1422) 
| at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:606) 
| at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:526) 
| at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:756) 
| at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:683) 
| ... 14 more 
| 
+---------------------------------------------------------------------------------------

 

This issue can happen in High Availability (HA) Controller setups, where the dbHosts property value under the #Database connection info section within the EUM properties file is pointing to the PASSIVE host of HA Controller setup.

 

In order to have an active connection to the eum_db schema within the Controller database, make sure to point this property value to an ACTIVE host.

 

Example: onprem.dbHost=<POINT_THIS_TO_THE_ACTIVE_CONTROLLER_HOST>

 

 

Note: In HA setups, the host can change dynamically, so in order to make sure that the EUM Processor remains up without manually changing the property value inside the the properties file, a Load Balancer can be put in place between the Controller and the EUM Processor which would help route connection from EUM Processor to active Controller host. 

 

Version history
Last update:
‎09-14-2018 11:16 AM
Updated by:
Join Us On December 10
Learn how Splunk and AppDynamics are redefining observability


Register Now!

Observe and Explore
Dive into our Community Blog for the Latest Insights and Updates!


Read the blog here