I have a problem with using JMS in Application server environment.
After some time the application server throws an java.sql.SQLException.
First there are only small amount of exception but during time their
quantity become more and more and in the end the application server cannot
serve any request because of trying to handle exception.
Besides the exception thrown by the application server a related databes
server also shows errors.
I got this exception and database error on the next configurations:
1. configuration: JBoss 3.2.6 installed on Linux and Oracle 9.2. installed
on AIX separated computers.
2. configuration: JBoss 4.0.2 installed on Linux and Oracle 9.2. installed
on AIX separated computers.
3. configuration: JBoss 3.2.6 installed and Oracle 9.2. installed on one
Linux computer.
4. configuration: JBoss 4.0.2 installed and Oracle 9.2. installed on one
Linux computer.
I read in other forum the sombody had the same problem with WebLogic and
Oralce on AIX but the solution is unknown.
I do not know excatly the root of the problem as first all works right but
in some distance of the exception is thrown and the reason is hidden for me
even on very detailed log level.
Can anyone help me? Is it a JBoss problem or a misconfiguration?
I attached the fragment of the JBoss log file bellow.
Thanks,
Peter
2005-09-21 16:12:18,708 WARN
[org.jboss.resource.connectionmanager.TxConnectionManager] Connection error
occured:
org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@14fcf1
[state=NORMAL
mc=org.jboss.resource.adapter.jdbc.local.LocalManagedConnection@1aa5ff6
handles=1 lastUse=1127311915834 permit=true trackByTx=true
mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@b01c2e
context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@a157d]
java.sql.SQLException: Io exception: Broken pipe
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334)
at
oracle.jdbc.driver.OracleStatement.close(OracleStatement.java:704)
at
oracle.jdbc.driver.OraclePreparedStatement.privateClose(OraclePreparedStatement.java:489)
at
oracle.jdbc.driver.OraclePreparedStatement.close(OraclePreparedStatement.java:396)
at
org.jboss.resource.adapter.jdbc.WrappedStatement.internalClose(WrappedStatement.java:782)
at
org.jboss.resource.adapter.jdbc.WrappedStatement.close(WrappedStatement.java:52)
at
org.jboss.mq.pm.jdbc2.PersistenceManager.add(PersistenceManager.java:845)
at
org.jboss.mq.pm.jdbc2.PersistenceManager.saveToStorage(PersistenceManager.java:1269)
at
org.jboss.mq.server.MessageCache.saveToStorage(MessageCache.java:407)
at
org.jboss.mq.server.MessageReference.makeSoft(MessageReference.java:301)
at
org.jboss.mq.server.MessageCache.validateSoftReferenceDepth(MessageCache.java:354)
at
org.jboss.mq.server.MessageCache.addInternal(MessageCache.java:145)
at org.jboss.mq.server.MessageCache.add(MessageCache.java:115)
at org.jboss.mq.server.JMSTopic.addMessage(JMSTopic.java:358)
at
org.jboss.mq.server.JMSDestinationManager.addMessage(JMSDestinationManager.java:397)
at
org.jboss.mq.server.JMSDestinationManager.addMessage(JMSDestinationManager.java:373)
at
org.jboss.mq.server.JMSServerInterceptorSupport.addMessage(JMSServerInterceptorSupport.java:136)
at
org.jboss.mq.security.ServerSecurityInterceptor.addMessage(ServerSecurityInterceptor.java:153)
at
org.jboss.mq.server.TracingInterceptor.addMessage(TracingInterceptor.java:270)
at
org.jboss.mq.server.JMSServerInvoker.addMessage(JMSServerInvoker.java:136)
at
org.jboss.mq.il.uil2.ServerSocketManagerHandler.handleMsg(ServerSocketManagerHandler.java:92)
at
org.jboss.mq.il.uil2.SocketManager$ReadTask.handleMsg(SocketManager.java:369)
at org.jboss.mq.il.uil2.msgs.BaseMsg.run(BaseMsg.java:377)
at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
at java.lang.Thread.run(Thread.java:534)
.
.
.
Caused by: java.sql.SQLException: Io exception: Broken pipe
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334)
at
oracle.jdbc.driver.OracleConnection.close(OracleConnection.java:1478)
at
org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.destroy(BaseWrapperManagedConnection.java:251)
... 31 more
2005-09-21 16:12:18,714 ERROR [JMSSenderBean] instanceNum: 1 JMSException
org.jboss.mq.SpyJMSException: Could not store message: 11 msg=6 hard
NOT_STORED PERSISTENT queue=TOPIC.callCenterTopic.ID:1.-2147483648
priority=4 lateClone=false hashCode=3825643; - nested throwable:
(java.sql.SQLException: Io exception: Connection reset)
at
org.jboss.mq.pm.jdbc2.PersistenceManager.saveToStorage(PersistenceManager.java:1283)
at
org.jboss.mq.server.MessageCache.saveToStorage(MessageCache.java:407)
at
org.jboss.mq.server.MessageReference.makeSoft(MessageReference.java:301)
at
org.jboss.mq.server.MessageCache.validateSoftReferenceDepth(MessageCache.java:354)
at
org.jboss.mq.server.MessageCache.addInternal(MessageCache.java:145)
at org.jboss.mq.server.MessageCache.add(MessageCache.java:115)
at org.jboss.mq.server.JMSTopic.addMessage(JMSTopic.java:358)
at
org.jboss.mq.server.JMSDestinationManager.addMessage(JMSDestinationManager.java:397)
at
org.jboss.mq.server.JMSDestinationManager.addMessage(JMSDestinationManager.java:373)
at
org.jboss.mq.server.JMSServerInterceptorSupport.addMessage(JMSServerInterceptorSupport.java:136)
at
org.jboss.mq.security.ServerSecurityInterceptor.addMessage(ServerSecurityInterceptor.java:153)
at
org.jboss.mq.server.TracingInterceptor.addMessage(TracingInterceptor.java:270)
at
org.jboss.mq.server.JMSServerInvoker.addMessage(JMSServerInvoker.java:136)
at
org.jboss.mq.il.uil2.ServerSocketManagerHandler.handleMsg(ServerSocketManagerHandler.java:92)
at
org.jboss.mq.il.uil2.SocketManager$ReadTask.handleMsg(SocketManager.java:369)
at org.jboss.mq.il.uil2.msgs.BaseMsg.run(BaseMsg.java:377)
at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
at java.lang.Thread.run(Thread.java:534)
Caused by: java.sql.SQLException: Io kivétel: Connection reset
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334)
at
oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2150)
at
oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2015)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2877)
at
oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:608)
at
org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:316)
at
org.jboss.mq.pm.jdbc2.PersistenceManager.add(PersistenceManager.java:838)
at
org.jboss.mq.pm.jdbc2.PersistenceManager.saveToStorage(PersistenceManager.java:1269)
... 17 more