1 Reply Latest reply on Dec 11, 2003 9:27 AM by xibin

    Socket error on remote JMS Server

      We have 3.2.1 deploy where there are JBoss application servers sending messages to a centralized remote JMS Server (JBoss). In turn other JBoss application servers have MDB's configured to listen on that JBoss server. We have ironed out all the configuration issues with doing that.

      Our problem is that when we send a message to the JMS server from the application server, using (UIL2XAConnectionFactory), the JMS server throws an exception, below, right when the client server calls connection.close() after sending the message. Its as if the close call interrupts the socket i/o. Note that the sender is operating within a transaction.

      2003-08-08 11:29:14,150 DEBUG [org.jboss.mq.il.uil2.SocketManager] (UIL2.SocketManager.ReadTask#7:) End ReadTask.run
      2003-08-08 11:34:05,201 DEBUG [org.jboss.mq.il.uil2.SocketManager] (UIL2.SocketManager.ReadTask#9:) Begin ReadTask.run
      2003-08-08 11:34:05,201 DEBUG [org.jboss.mq.il.uil2.SocketManager] (UIL2.SocketManager.WriteTask#10:) Begin WriteTask.run
      2003-08-08 11:34:05,202 DEBUG [org.jboss.mq.il.uil2.SocketManager] (UIL2.SocketManager.WriteTask#10:) Created ObjectOutputStream
      2003-08-08 11:34:05,205 DEBUG [org.jboss.mq.il.uil2.SocketManager] (UIL2.SocketManager.ReadTask#9:) Created ObjectInputStream
      2003-08-08 11:34:05,240 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] (Thread-48:) Setting up the UILClientIL Connection
      2003-08-08 11:34:05,240 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] (Thread-48:) The UILClientIL Connection is set up
      2003-08-08 11:34:07,361 DEBUG [org.jboss.mq.il.uil2.SocketManager] (UIL2.SocketManager.WriteTask#10:) End WriteTask.run
      2003-08-08 11:34:07,362 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] (UIL2.SocketManager.ReadTask#9:) Exiting on IOE
      java.io.InterruptedIOException: Operation interrupted
      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:67)
      at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2133)
      at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2316)
      at java.io.ObjectInputStream$BlockDataInputStream.refill(ObjectInputStream.java:2383)
      at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2455)
      at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2604)
      at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
      at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:278)
      at java.lang.Thread.run(Thread.java:536)

        • 1. Re: Socket error on remote JMS Server
          xibin

          I am interested in answers to this problem as well. In out clustered deployment, if a node leaves the cluster (shutdown or reboot), the rest of the servers will throw this exception and a TimerTask will throw PingTimeoutException over and over again. I really need an explanation to this problem. I verified that all my clients are closing their connections.