This issue was resolved after increasing the max active value in
registry.xml.

/Nirodha

On Thu, Jul 12, 2012 at 9:53 AM, Nirodha Pramod <[email protected]> wrote:

> While running a performance test for resource adding in G-Reg with default
> configuration, I got this error continuously for concurrency=50, loops=40.
>
> Test scenario is :
> 1. Log into G-reg.
> 2. List resources.
> 3. Add a resource.
> 4. List resources again.
> 5. Sign out.
>
> *How should we fine tune G-reg for such a load?*
>
> Complete stack trace is below.
>
> [2012-07-12 08:34:06,439] ERROR
> {org.wso2.carbon.registry.core.dataaccess.TransactionManager} -  Failed to
> start new registry transaction.
> org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-6-thread-1]
> Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none
> available[size:50; busy:39; idle:0; lastwait:60000].
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667)
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
>  at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
> at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
>  at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
> at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
>  at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>  at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> [2012-07-12 08:34:06,440]  WARN
> {org.wso2.carbon.registry.indexing.ResourceSubmitter} -  An error occurred
> while submitting resources for indexing
> org.wso2.carbon.registry.core.exceptions.RegistryException: Failed to
> start new registry transaction.
>  at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:97)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
> at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
>  at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
> at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
>  at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
>  at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>  at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.tomcat.jdbc.pool.PoolExhaustedException:
> [pool-6-thread-1] Timeout: Pool empty. Unable to fetch a connection in 60
> seconds, none available[size:50; busy:39; idle:0; lastwait:60000].
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(Connecti[2012-07-12
> 08:34:06,439] ERROR
> {org.wso2.carbon.registry.core.dataaccess.TransactionManager} -  Failed to
> start new registry transaction.
> org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-6-thread-1]
> Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none
> available[size:50; busy:39; idle:0; lastwait:60000].
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667)
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
> at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
>  at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
> at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
>  at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
> at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
>  at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
>  at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>  at java.lang.Thread.run(Thread.java:662)
> [2012-07-12 08:34:06,440]  WARN
> {org.wso2.carbon.registry.indexing.ResourceSubmitter} -  An error occurred
> while submitting resources for indexing
> org.wso2.carbon.registry.core.exceptions.RegistryException: Failed to
> start new registry transaction.
> at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:97)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
>  at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
> at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
>  at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>  at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.tomcat.jdbc.pool.PoolExhaustedException:
> [pool-6-thread-1] Timeout: Pool empty. Unable to fetch a connection in 60
> seconds, none available[size:50; busy:39; idle:0; lastwait:60000].
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667)
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
> at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
>  at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
> ... 14 more
> [2012-07-12 08:36:06,462] ERROR
> {org.wso2.carbon.registry.core.dataaccess.TransactionManager} -  Failed to
> start new registry transaction.
> org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-6-thread-1]
> Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none
> available[size:50; busy:39; idle:0; lastwait:60000].
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667)
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
>  at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
> at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
>  at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
> at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
>  at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>  at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> [2012-07-12 08:36:06,463]  WARN
> {org.wso2.carbon.registry.indexing.ResourceSubmitter} -  An error occurred
> while submitting resources for indexing
> org.wso2.carbon.registry.core.exceptions.RegistryException: Failed to
> start new registry transaction.
>  at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:97)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
> at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
>  at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
> at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
>  at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
>  at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>  at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.tomcat.jdbc.pool.PoolExhaustedException:
> [pool-6-thread-1] Timeout: Pool empty. Unable to fetch a connection in 60
> seconds, none available[size:50; busy:39; idle:0; lastwait:60000].
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667)
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
>  at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
> at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
>  ... 14 more
> onPool.java:667)
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
>  at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
> at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
>  ... 14 more
> [2012-07-12 08:36:06,462] ERROR
> {org.wso2.carbon.registry.core.dataaccess.TransactionManager} -  Failed to
> start new registry transaction.
> org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-6-thread-1]
> Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none
> available[size:50; busy:39; idle:0; lastwait:60000].
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667)
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
> at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
>  at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
> at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
>  at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
> at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
>  at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
>  at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>  at java.lang.Thread.run(Thread.java:662)
> [2012-07-12 08:36:06,463]  WARN
> {org.wso2.carbon.registry.indexing.ResourceSubmitter} -  An error occurred
> while submitting resources for indexing
> org.wso2.carbon.registry.core.exceptions.RegistryException: Failed to
> start new registry transaction.
> at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:97)
>  at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.beginTransaction(EmbeddedRegistry.java:443)
> at
> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs(EmbeddedRegistry.java:2321)
>  at
> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getLogs(CacheBackedRegistry.java:310)
> at
> org.wso2.carbon.registry.core.session.UserRegistry.getLogs(UserRegistry.java:1285)
>  at
> org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:67)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>  at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
>  at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.tomcat.jdbc.pool.PoolExhaustedException:
> [pool-6-thread-1] Timeout: Pool empty. Unable to fetch a connection in 60
> seconds, none available[size:50; busy:39; idle:0; lastwait:60000].
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667)
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182)
> at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
>  at
> org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager.beginTransaction(JDBCTransactionManager.java:80)
> ... 14 more
>
>
>
>
> --
> *Nirodha Gallage*
> Software Engineer, QA.
> WSO2 Inc.: http://wso2.com/
> Email: [email protected]   Mobile: +94716429078
>
>


-- 
*Nirodha Gallage*
Software Engineer, QA.
WSO2 Inc.: http://wso2.com/
Email: [email protected]   Mobile: +94716429078
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to