间歇性SQLException:OALL8处于不一致状态

时间:2010-11-18 05:05:11

标签: java oracle hibernate spring sqlexception

间歇性地得到以下错误。

ERROR Exception occured while fetching the available subscriptions from the database - Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: JDBC rollback failed    
org.springframework.transaction.TransactionSystemException: Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: JDBC rollback failed    
Caused by: org.hibernate.TransactionException: JDBC rollback failed    
       at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:204)
           at org.springframework.orm.hibernate3.HibernateTransactionManager.doRollback(HibernateTransactionManager.java:676)    
       ... 80 more    
Caused by: java.sql.SQLException: No more data to read from socket    
java.sql.SQLException: Closed Connection    
ERROR org.hibernate.transaction.JDBCTransaction 17/11/2010 20:49:41 - JDBC rollback failed
java.sql.SQLException: Io exception: Broken pipe
ERROR org.springframework.transaction.interceptor.TransactionInterceptor 17/11/2010 20:49:41 - Application exception overridden by rollback exception
org.hibernate.exception.GenericJDBCException: could not execute query
java.sql.SQLException: OALL8 is in an inconsistent state

数据库:Oracle9i

JDBC驱动程序:10.2.0.4.0

开发环境:Mule 3.0,Spring 3.0和Hibernate 3

1 个答案:

答案 0 :(得分:8)

“OALL8处于不一致状态”是JDBC 10.1,10.2和11.1中发生的一般异常。它表示在JDBC连接中检测到内部不一致,但它不提供导致不一致的原因的信息。 JDBC 11.2中不再出现该异常。 该错误通常是由JDBC代码中的错误引起的。这些很难分析。最简单的解决方案是升级JDBC驱动程序。