1 Reply Latest reply on May 16, 2007 12:50 PM by Adrian Brock

    JBossMQ disconnected in Windows 2003 Server

    Martin Ng Newbie

      OS: Windows 2003 Server
      Impacted JBoss version: 4.0.4GA clustered (with 2 nodes)
      We have a Session Bean which connected to MQ initially when the bean is instantiated. After a Idle period (about 24 hour), the MQ connection got disconnected. Hence when we try a transaction after 24 hour, it failed.
      I have tried on both JBoss 4.0.3SP1 and 4.0.4GA, and it happened only on 4.0.4GA.

      Here are some traces from the JBoss log:
      2007-04-23 21:34:28,989 [UIL2(SocketManager.MsgPool@19320cf client=129.14.114.51:4295)#11] DEBUG org.jboss.mq.il.uil2.SocketManager (SocketManager.java:405) - Failed to handle: org.jboss.mq.il.uil2.msgs.CloseMsg11563525[msgType: m_connectionClosing, msgID: -2147482708, error: null]
      java.io.IOException: Client is not connected
      at org.jboss.mq.il.uil2.SocketManager.internalSendMessage(SocketManager.java:265)
      at org.jboss.mq.il.uil2.SocketManager.sendReply(SocketManager.java:239)
      at org.jboss.mq.il.uil2.ServerSocketManagerHandler.handleMsg(ServerSocketManagerHandler.java:128)
      at org.jboss.mq.il.uil2.SocketManager$ReadTask.handleMsg(SocketManager.java:396)
      at org.jboss.mq.il.uil2.msgs.BaseMsg.run(BaseMsg.java:392)
      at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
      at java.lang.Thread.run(Thread.java:534)
      2007-04-23 21:34:28,989 [UIL2(SocketManager.MsgPool@19320cf client=129.14.114.51:4295)#11] DEBUG org.jboss.mq.il.uil2.SocketManager (SocketManager.java:413) - Failed to send error reply
      java.io.IOException: Client is not connected
      at org.jboss.mq.il.uil2.SocketManager.internalSendMessage(SocketManager.java:265)
      at org.jboss.mq.il.uil2.SocketManager.access$800(SocketManager.java:52)
      at org.jboss.mq.il.uil2.SocketManager$ReadTask.handleMsg(SocketManager.java:409)
      at org.jboss.mq.il.uil2.msgs.BaseMsg.run(BaseMsg.java:392)
      at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
      at java.lang.Thread.run(Thread.java:534)
      2007-04-23 21:34:28,989 [UIL2.SocketManager.ReadTask#89 client=129.14.114.51:8093] DEBUG org.jboss.mq.il.uil2.SocketManager (SocketManager.java:386) - End ReadTask.run
      2007-04-23 21:34:28,989 [UIL2.SocketManager.WriteTask#90 client=129.14.114.51:8093] DEBUG org.jboss.mq.il.uil2.SocketManager (SocketManager.java:542) - End WriteTask.run
      2007-04-23 21:34:28,989 [http-0.0.0.0-18080-1] DEBUG org.jboss.mq.il.uil2.UILClientILService (UILClientILService.java:162) - Stopping
      2007-04-23 21:34:28,989 [UIL2.SocketManager.WriteTask#92 client=129.14.114.51:4295] DEBUG org.jboss.mq.il.uil2.SocketManager (SocketManager.java:542) - End WriteTask.run
      2007-04-23 21:34:28,989 [UIL2.SocketManager.ReadTask#91 client=129.14.114.51:4295] DEBUG org.jboss.mq.il.uil2.ServerSocketManagerHandler (ServerSocketManagerHandler.java:238) - Exiting on IOE
      java.net.SocketException: socket closed
      at java.net.SocketInputStream.socketRead0(Native Method)
      at java.net.SocketInputStream.read(SocketInputStream.java:129)
      at java.io.BufferedInputStream.fill(BufferedInputStream.java:183)
      at java.io.BufferedInputStream.read(BufferedInputStream.java:201)
      at org.jboss.util.stream.NotifyingBufferedInputStream.read(NotifyingBufferedInputStream.java:79)
      at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2133)
      at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2313)
      at java.io.ObjectInputStream$BlockDataInputStream.refill(ObjectInputStream.java:2380)
      at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2452)
      at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2601)
      at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
      at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:317)
      at java.lang.Thread.run(Thread.java:534)