jboss TxConnectionManager pingDatabase 数据源配置问题?
这个异常错误是怎么回事?怎么解决?谢谢各位!
用得是jboss-4.0.5和oracle10g,系统一直运行正常,今天在加了一些功能模块后突然这样了
17:41:39,051 WARN [TxConnectionManager] Connection error occured: org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@132820a[state=NORMAL mc=org.jboss.resource.adapter.jdbc.local.LocalManagedConnection@1607bee handles=0 lastUse=1237801116111 permit=false trackByTx=false mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@12bf560 context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@fa930d xaResource=org.jboss.resource.connectionmanager.TxConnectionManager$LocalXAResource@1685138 txSync=null]
java.sql.SQLException: pingDatabase failed status=-1
at org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker.isValidConnection(OracleValidConnectionChecker.java:72)
at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnectionFactory.isValidConnection(BaseWrapperManagedConnectionFactory.java:435)
at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.checkValid(BaseWrapperManagedConnection.java:231)
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.matchManagedConnections(LocalManagedConnectionFactory.java:200)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:209)
at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:491)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:341)
at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:301)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396)
at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842)
at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
17:41:39,052 WARN [JBossManagedConnectionPool] Destroying connection that could not be successfully matched: org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@132820a[state=DESTROYED mc=org.jboss.resource.adapter.jdbc.local.LocalManagedConnection@1607bee handles=0 lastUse=1237801116111 permit=false trackByTx=false mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@12bf560 context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@fa930d xaResource=org.jboss.resource.connectionmanager.TxConnectionManager$LocalXAResource@1685138 txSync=null]
17:41:42,371 ERROR [STDERR] java.sql.SQLException: ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], []
17:41:42,371 ERROR [STDERR] at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
17:41:42,372 ERROR [STDERR] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
17:41:42,372 ERROR [STDERR] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
17:41:42,372 ERROR [STDERR] at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
17:41:42,372 ERROR [STDERR] at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:207)
17:41:42,372 ERROR [STDERR] at oracle.jdbc.driver.T4CStatement.fetch(T4CStatement.java:1018)
17:41:42,372 ERROR [STDERR] at oracle.jdbc.driver.OracleResultSetImpl.close_or_fetch_from_next(OracleResultSetImpl.java:291)
17:41:42,372 ERROR [STDERR] at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:213)
17:42:54,850 WARN [LocalManagedConnectionFactory] Destroying connection that is not valid, due to the following exception: oracle.jdbc.driver.T4CConnection@121b0da
java.sql.SQLException: pingDatabase failed status=-1
at org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker.isValidConnection(OracleValidConnectionChecker.java:72)
at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnectionFactory.isValidConnection(BaseWrapperManagedConnectionFactory.java:435)
at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.checkValid(BaseWrapperManagedConnection.java:231)
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.matchManagedConnections(LocalManagedConnectionFactory.java:200)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:209)
at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:491)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:341)
at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:301)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396)
at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842)
at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
下面是oracle-ds.xml中的部分配置
<min-pool-size>20</min-pool-size>
<max-pool-size>100</max-pool-size>
<!-- Uses the pingDatabase method to check a connection is still valid before handing it out from the pool -->
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name>
<!-- Checks the Oracle error codes and messages for fatal errors -->
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
<!-- sql to call when connection is created-->
<new-connection-sql>select 1 from batchset</new-connection-sql>
<!-- sql to call on an existing pooled connection when it is obtained from pool - the OracleValidConnectionChecker is prefered -->
<check-valid-connection-sql>select 1 from batchset</check-valid-connection-sql>
<metadata>
<type-mapping>Oracle9i</type-mapping>
</metadata>
</local-tx-datasource>
[解决办法]
我也是碰到这样的错误,真不知道怎么办了 !