1 Reply Latest reply on Feb 10, 2006 6:06 AM by Adrian Brock

    JMS connections to JBoss server hang, timeout after 5 minute

    Peter Carbon Newbie

      Under heavy JMS messaging load some of our 4.0.2 JBoss servers seem to stop accepting any kind of connections, whether JMS, http, etc.

      When this happens the clients which try to connect to the servers to send them a JMS message hang for about 5 minutes and then get the following exception:

      org.jboss.mq.SpyJMSException: Cannot authenticate user; - nested throwable: (java.net.SocketException: Connection r
      eset)
      at org.jboss.mq.SpyJMSException.getAsJMSException(SpyJMSException.java:66)
      at org.jboss.mq.SpyJMSException.rethrowAsJMSException(SpyJMSException.java:51)
      at org.jboss.mq.Connection.authenticate(Connection.java:1118)
      at org.jboss.mq.Connection.(Connection.java:267)
      at org.jboss.mq.Connection.(Connection.java:338)
      at org.jboss.mq.SpyConnection.(SpyConnection.java:68)
      at org.jboss.mq.SpyConnectionFactory.createConnection(SpyConnectionFactory.java:87)
      at amazon.alice.messagesenders.JMSMessageSender.reConnect(JMSMessageSender.java:246)
      at amazon.alice.messagesenders.JMSMessageSender.getConnection(JMSMessageSender.java:165)
      at amazon.alice.messagesenders.JMSMessageSender.send(JMSMessageSender.java:71)
      at amazon.alice.messagesenders.GenericMessageSender.sendMessage(GenericMessageSender.java:37)
      at amazon.alice.messagesenders.GenericMessageSender.sendMessage(GenericMessageSender.java:44)
      at amazon.alice.initiators.PipelineInitiator.processItem(PipelineInitiator.java:333)
      at amazon.alice.initiators.AbstractInitiator$InitiationExecution.run(AbstractInitiator.java:363)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
      at java.lang.Thread.run(Thread.java:595)
      Caused by: java.net.SocketException: Connection reset
      at java.net.SocketInputStream.read(SocketInputStream.java:168)
      at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
      at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
      at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
      at org.jboss.util.stream.NotifyingBufferedInputStream.read(NotifyingBufferedInputStream.java:77)
      at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2217)
      at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2230)
      at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2698)
      at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:750)
      at java.io.ObjectInputStream.(ObjectInputStream.java:268)
      at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:277)

      Does anybody have any idea what could be causing these servers to stop accepting connections? Also, can the default timeout on the client side be changed from 5 minutes to something else?

      Thanks for your help,

      Peter