15 September 2010

java.sql.SQLException: Listener refused the connection

Cambiando la base de datos a Liferay de HSQL a Oracle, hace un tiempo me surgio un fallo referente al pool de conexiones. La traza del error es la siguiente.

WARN  [BasicResourcePool:1841] com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1bcf3d -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30). Last acquisition attempt exception: 
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12519, TNS:no appropriate service handler found
The Connection descriptor used by the client was:
localhost:1521:xe

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:261)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:439)
at oracle.jdbc.driver.T4CConnection.(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)

La solución pasa por configurar el pool en el fichero portal-ext.properties:

hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
jdbc.default.acquireIncrement=1
jdbc.default.maxPoolSize=5
jdbc.default.minPoolSize=1
jdbc.default.numHelperThreads=1

- FIN -

No comments: