我在我的应用程序中使用 Jboss 5.0 和 mysql。并且会有很多并发操作,并且数据库包含相当多的记录。
这个错误经常出现..时不时地。
com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException:
Can't call rollback when
autocommit=true at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:888)
at
com.mysql.jdbc.Connection.rollback(Connection.java:5192)
at
org.jboss.resource.adapter.jdbc.local.LocalManagedConnection.rollback(LocalManagedConnection.java:97)
at
org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener.tidyup(TxConnectionManager.java:783)
at
org.jboss.resource.connectionmanager.BaseConnectionManager2.returnManagedConnection(BaseConnectionManager2.java:453)
at
org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener.connectionClosed(TxConnectionManager.java:734)
at
org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.closeHandle(BaseWrapperManagedConnection.java:362)
at
org.jboss.resource.adapter.jdbc.WrappedConnection.close(WrappedConnection.java:155)
有人可以帮忙吗?
提前致谢
要么您在打开自动提交时尝试调用回滚,要么您在数据库中使用不支持事务(以及回滚功能)的 MyISAM 类型表。
根据堆栈跟踪判断,数据库事务失败,并且在尝试创建 SQLException 并回滚事务时,发生了此异常。除非有更多的异常(比如指示在哪里)your代码中异常被触发),那么我会冒险猜测这是由于 MyISAM 表造成的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)