java.sql.SQLException: Cannot obtain connection: driverURL = jdbc:weblogic:pool:sybasePool_ALU_P1,
props = {enableTwoPhaseCommit=true, jdbcTxDataSource=true, connectionPoolID=sybasePool_ALU_P1}.
Nested Exception: java.lang.RuntimeException: Failed to setAutoCommit to true
for pool connection.
at weblogic.jdbc.wrapper.PoolConnection.init(PoolConnection.java:38)
at weblogic.jdbc.pool.Driver.allocateConnection(Driver.java:248)
at weblogic.jdbc.pool.Driver.connect(Driver.java:158)
at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:394)
at weblogic.jdbc.jts.Driver.connect(Driver.java:137)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:298)
Here's my datasource config:
<JDBCConnectionPool CapacityIncrement="2"
ConnLeakProfilingEnabled="true"
DriverName="com.sybase.jdbc2.jdbc.SybDriver" InitialCapacity="4"
MaxCapacity="10" Name="sybasePool_ALU_P99"
Password="******"
Properties="user=****;ELIMINATE_010SM=true;PACKETSIZE=4096;CHARSET=cp850"
Targets="myserver" TestConnectionsOnCreate="true"
TestFrequencySeconds="900"
TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:sybase:Tds:blah:9999/mydb"/>
<JDBCTxDataSource EnableTwoPhaseCommit="true"
JNDIName="jdbc/jts/****" Name="sybasePool_****"
PoolName="sybasePool_****" Targets="myserver"/>
Can somebody help out a poor developer?
Todd wrote:
Hi. What version of weblogic? I can help already. The pool will be much better
if you set initial capacity equal to max, and change the TestTableName to:
"SQL select 1". That will be *much* better than touching the huge sysobjects
table.
If you can turn on jdbc logging, and show me the full original stacktrace
of the exception, there may be a patch for the problem. This sounds familiar.
Joe
We are on WLS 8.1, no service pack.
I'll try to get a stack trace with JDBC logging but this is happening in production
so it may be a while.....