10 Replies Latest reply on Dec 13, 2010 4:54 AM by renncpc

    Exiting on IOE - java.net.SocketException: socket closed

    stnieman

      This occurs when I post a message to a queue on Windows 2003, but works just fine on XP.

      2006-03-10 09:01:55,755 DEBUG [org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory] Using properties: {user=sa, password=--hidden--}
      2006-03-10 09:02:22,474 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
      2006-03-10 09:02:22,474 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
      2006-03-10 09:02:22,474 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
      2006-03-10 09:02:22,489 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
      2006-03-10 09:02:22,505 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
      2006-03-10 09:02:22,505 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
      2006-03-10 09:02:22,708 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] 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:67)
      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:284)
      at java.lang.Thread.run(Thread.java:534)
      2006-03-10 09:02:22,708 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
      2006-03-10 09:02:22,708 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run

        • 1. Re: Exiting on IOE - java.net.SocketException: socket closed
          stnieman

          here is an updat to the JBossMQ problem. I mistakenly stated it only fails on W2003, but it also fails on XP. I have tested this on JBoss 3.0.4 (with related jar files) and it works. But it fails on 3.2.7, 3.2.8SP1 and 4.0.3SP1.

          Here are the log snippets for 3.2.8SP1 (the first message was for 3.2.7)...first the client sender sends a message to Q and is able to get a a JMSMessageID:

          2006-03-16 12:50:00.975 PM FINE J2EECONTEXTBizDriver[testQ.xdr]::parseInitialContextElement Host=localhost:1099 Uid= JndiFactory=org.jnp.interfaces.NamingContextFactory security auth= security protocol=
          2006-03-16 12:50:00.975 PM FINEST J2EECONTEXTBizDriver[testQ.xdr]::parseInitialContextElement Getting initial context
          2006-03-16 12:50:00.975 PM FINE J2EECONTEXTBizDriver[testQ.xdr]::parseInitialContextElement Got context
          2006-03-16 12:50:00.975 PM FINER XAwareJMSManager::getQueueSender ENTER Params: Queue name:queue/A
          2006-03-16 12:50:00.975 PM FINER XAwareJMSManager::addQueueSender ENTER Params: Queue name:queue/A
          2006-03-16 12:50:00.975 PM FINER XAwareJMSQueueSender::createQueueSender ENTER Params: Queuec name:queue/AQueue connection factory:ConnectionFactory

          <snip -- message is 4K>

          2006-03-16 12:50:01.636 PM FINEST JMSBizComponent[testQ.xbc]::sendMessageToQueue Sending message to sender
          2006-03-16 12:50:01.776 PM FINEST XAwareJMSQueueSender::sendMessage Sent message id:ID:1-11425350016561
          2006-03-16 12:50:01.776 PM FINER JMSBizComponent[testQ.xbc]::Reset ENTER

          But JBossMQ fails with the UIL2 closing a connection (there is more robust logging in 3.2.8SP1 than 4.0.3SP1 !!):

          2006-03-16 12:42:55,183 INFO [org.jboss.system.server.Server] JBoss (MX MicroKernel) [3.2.8.SP1 (build: CVSTag=JBoss_3_2_8_SP1 date=200603031235)] Started in 23s:123ms
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
          2006-03-16 12:50:01,506 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
          2006-03-16 12:50:01,506 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
          2006-03-16 12:50:01,746 DEBUG [org.jboss.mq.security.SecurityManager] No SecurityMetadadata was available for A using default security config
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] Failed to handle: org.jboss.mq.il.uil2.msgs.CloseMsg26726559[msgType: m_connectionClosing, msgID: 16, 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)
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] 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)
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] 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)
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run


          Here are the log snippets for 4.0.3SP1. Again, the client sender sends a message to Q and is able to get a a JMSMessageID:
          2006-03-16 01:36:35.944 PM FINE J2EECONTEXTBizDriver[testQ.xdr]::parseInitialContextElement Host=localhost:1099 Uid= JndiFactory=org.jnp.interfaces.NamingContextFactory security auth= security protocol=
          2006-03-16 01:36:35.944 PM FINEST J2EECONTEXTBizDriver[testQ.xdr]::parseInitialContextElement Getting initial context
          2006-03-16 01:36:35.944 PM FINE J2EECONTEXTBizDriver[testQ.xdr]::parseInitialContextElement Got context
          2006-03-16 01:36:35.944 PM FINER XAwareJMSManager::getQueueSender ENTER Params: Queue name:queue/A
          2006-03-16 01:36:35.944 PM FINER XAwareJMSManager::addQueueSender ENTER Params: Queue name:queue/A
          2006-03-16 01:36:35.944 PM FINER XAwareJMSQueueSender::createQueueSender ENTER Params: Queuec name:queue/AQueue connection factory:ConnectionFactory

          <snip -- message is 4K>

          2006-03-16 01:36:36.885 PM FINEST JMSBizComponent[testQ.xbc]::sendMessageToQueue Sending message to sender
          2006-03-16 01:36:36.985 PM FINEST XAwareJMSQueueSender::sendMessage Sent message id:ID:1-11425377969051
          2006-03-16 01:36:36.995 PM FINER JMSBizComponent[testQ.xbc]::Reset ENTER

          But JBossMQ fails with the UIL2 closing a connection:

          2006-03-16 12:42:55,183 INFO [org.jboss.system.server.Server] JBoss (MX MicroKernel) [3.2.8.SP1 (build: CVSTag=JBoss_3_2_8_SP1 date=200603031235)] Started in 23s:123ms
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
          2006-03-16 12:50:01,456 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
          2006-03-16 12:50:01,506 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
          2006-03-16 12:50:01,506 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
          2006-03-16 12:50:01,746 DEBUG [org.jboss.mq.security.SecurityManager] No SecurityMetadadata was available for A using default security config
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] Failed to handle: org.jboss.mq.il.uil2.msgs.CloseMsg26726559[msgType: m_connectionClosing, msgID: 16, 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)
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] 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)
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] 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)
          2006-03-16 12:50:02,047 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run

          • 2. Re: Exiting on IOE - java.net.SocketException: socket closed
            stnieman

            I have replicated the problem on the Fedora Linux distribution therefore it is NOT operating specific, but it is a JBossMQ problem. Has ANYONE been successful using JBossMQ??

            • 3. Re: Exiting on IOE - java.net.SocketException: socket closed
              alchemista

              Yes, many people have been successful using JBossMQ. I think this post may be in the wrong forum though.

              In any case, I also get the "Exiting on IOE" exception that you reported, but only when I'm sending large amounts of data to a JBoss instance.

              • 4. Re: Exiting on IOE - java.net.SocketException: socket closed
                stnieman

                The message I am sending for test is about 2Kb.

                I found this and commented there:
                http://www.jboss.com/index.html?module=bb&op=viewtopic&t=79225

                • 5. Re: Exiting on IOE - java.net.SocketException: socket closed
                  timfox

                  This is a forum for JBoss Messaging, not JBoss MQ

                  • 6. Re: Exiting on IOE - java.net.SocketException: socket closed

                    i'm still getting this problem with 4.0.4:

                    2006-08-14 16:00:39,354 DEBUG [uil2.SocketManager] Begin ReadTask.run
                    2006-08-14 16:00:39,354 DEBUG [uil2.SocketManager] Begin WriteTask.run
                    2006-08-14 16:00:39,354 DEBUG [uil2.SocketManager] Created ObjectOutputStream
                    2006-08-14 16:00:39,374 DEBUG [uil2.SocketManager] Created ObjectInputStream
                    2006-08-14 16:00:39,382 DEBUG [uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
                    2006-08-14 16:00:39,382 DEBUG [uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
                    2006-08-14 16:00:39,476 DEBUG [uil2.ServerSocketManagerHandler] 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:218)
                     at java.io.BufferedInputStream.read(BufferedInputStream.java:235)
                     at org.jboss.util.stream.NotifyingBufferedInputStream.read(NotifyingBufferedInputStream.java:79)
                     at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2205)
                     at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2385)
                     at java.io.ObjectInputStream$BlockDataInputStream.refill(ObjectInputStream.java:2452)
                     at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2524)
                     at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2673)
                     at java.io.ObjectInputStream.readByte(ObjectInputStream.java:874)
                     at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:317)
                     at java.lang.Thread.run(Thread.java:595)
                    2006-08-14 16:00:39,476 DEBUG [uil2.SocketManager] End ReadTask.run
                    2006-08-14 16:00:39,476 DEBUG [uil2.SocketManager] End WriteTask.run
                    2006-08-14 16:00:39,476 DEBUG [uil2.SocketManager] Failed to handle: org.jboss.mq.il.uil2.msgs.CloseMsg938021[msgType: m_connectionClosing, msgID: 8, 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:595)
                    2006-08-14 16:00:39,477 DEBUG [uil2.SocketManager] 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:595)
                    


                    • 7. Re: Exiting on IOE - java.net.SocketException: socket closed
                      timfox

                      This is not a JBoss MQ forum, this is a JBoss Messaging forum.

                      • 8. Re: Exiting on IOE - java.net.SocketException: socket closed
                        timfox

                        Moved from JBoss Messaging forum where it was wrongly posted.

                        • 9. Re: Exiting on IOE - java.net.SocketException: socket closed
                          yoggi06

                          Hello !

                          I have the same problem !

                          Do you have a solution?


                          Regards
                          yog

                          • 10. Re: Exiting on IOE - java.net.SocketException: socket closed
                            renncpc

                            JBoss default configration:ConnectionFactory is a RemoteJndiName, I change it to java:/JmsXA(LocalJndiName), then the MDB worked.