下面是JBOSS启动时的部分日志,请各位帮忙找一下原因,第二天连接数据库时就出问题,必须重新JBOSS才能解决问题。而且CPU使用率达99。9%,内存占用率不高,不足20%,
2007-05-14 09:24:33,769 DEBUG [org.jboss.system.ServiceController] starting service jboss.mq:service=PersistenceManager
2007-05-14 09:24:34,021 DEBUG [org.jboss.mq.pm.jdbc2.PersistenceManager] Starting jboss.mq:service=PersistenceManager
2007-05-14 09:24:34,024 DEBUG [org.jboss.mq.pm.jdbc2.PersistenceManager] Creating Schema
2007-05-14 09:24:34,027 DEBUG [org.jboss.mq.pm.jdbc2.PersistenceManager] Could not create table with SQL: CREATE CACHED TABLE JMS_MESSAGES ( MESSAGEID INTEGER NOT NULL, DESTINATION VARCHAR(255) NOT NULL, TXID INTEGER, TXOP CHAR(1), MESSAGEBLOB OBJECT, PRIMARY KEY (MESSAGEID, DESTINATION) )
java.sql.SQLException: Table already exists: JMS_MESSAGES in statement [CREATE CACHED TABLE JMS_MESSAGES]
at org.hsqldb.jdbc.Util.throwError(Unknown Source)
at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:227)
at org.jboss.mq.pm.jdbc2.PersistenceManager.createSchema(PersistenceManager.java:240)
------解决方案--------------------------------------------------------
Mysql(MySQL 4.1) 文档 7.5.2 节
Tuning Server Parameters 里面
在 Mysql控制台下输入 SHOW VARIABLES;
最后一个参数
wait_timeout 28800
如果单位是秒,也就是 8 个小时。
程序最后一次建立连接完毕之后 8 个小时,
Mysql 单方面关闭了这个连接。
但 Hibernate 还在记忆着这个连接基本信息。
程序再次连接的时候,已经不存在了。