When I deploy & start the Nuxeo-based EasySOA Registry server , after playing with its WebEngine UI for 15 to 30 minutes, all web requests start to take 10s of seconds because of the following underlaying datasource-bound exception :
...
Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot get a connection, pool error Timeout waiting for idle object
at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:114)
...
Caused by: java.util.NoSuchElementException: Timeout waiting for idle object
at org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1167)
...
Maybe it's tied to using an SQL Directory SQLSession in addition to the regular Nuxeo DocumentModel CoreSession. Indeed, the remainder of the log says it often happens when computing our "indicators", which involves doing a lot of queries, most using CoreSession but also some using SQLSession, to render the same web page.
This worked perfectly well until we changed from a January dated release to a June dated release, at which point this error appeared. Nuxeo colleagues advised us to switch to 5.7.1 which we did. This solved some other problems but visibly not this one.
Please note that this problem makes doing real work & demo in our solution a real pain...