0 Replies Latest reply on Nov 12, 2009 8:11 AM by jmesnil

    JMSServerControl2Test.testListConnectionIDsForNetty intermit

    jmesnil

      this test is failing from time to time on hudson.
      When it fails, there is a netty exception which is logged:

       [junit] [main] 07:22:55,205 INFO [org.hornetq.tests.util.UnitTestCase] ###### starting test org.hornetq.tests.integration.jms.server.management.JMSServerControl2Test.testListConnectionIDsForNetty
       [junit] [main] 07:22:55,205 INFO [org.hornetq.core.server.impl.HornetQServerImpl] live server is starting..
       [junit] [main] 07:22:55,205 WARNING [org.hornetq.core.management.impl.ManagementServiceImpl] It has been detected that the cluster admin user and password which are used to replicate management operation from one node to the other have not been changed from the installation default. Please see the HornetQ user guide for instructions on how to do this.
       [junit] [main] 07:22:55,207 INFO [org.hornetq.integration.transports.netty.NettyAcceptor] Started Netty Acceptor version 3.1.5.GA-r1772
       [junit] [main] 07:22:55,208 INFO [org.hornetq.core.server.impl.HornetQServerImpl] HornetQ Server version 2.0.0.BETA5 (hornet-baby, 108) started
       [junit] [main] 07:22:55,208 INFO [org.hornetq.core.server.impl.HornetQServerImpl] live is already started, ignoring the call to start..
       [junit] [New I/O server worker #767-2] 07:22:57,218 SEVERE [org.hornetq.integration.transports.netty.HornetQChannelHandler] Got exception on Netty channel
       [junit] java.io.IOException: Connection reset by peer
       [junit] at sun.nio.ch.FileDispatcher.read0(Native Method)
       [junit] at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)
       [junit] at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:233)
       [junit] at sun.nio.ch.IOUtil.read(IOUtil.java:206)
       [junit] at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:207)
       [junit] at org.jboss.netty.buffer.HeapChannelBuffer.setBytes(HeapChannelBuffer.java:156)
       [junit] at org.jboss.netty.buffer.AbstractChannelBuffer.writeBytes(AbstractChannelBuffer.java:425)
       [junit] at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:305)
       [junit] at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:275)
       [junit] at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:196)
       [junit] at org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)
       [junit] at org.jboss.netty.util.VirtualExecutorService$ChildExecutorRunnable.run(VirtualExecutorService.java:179)
       [junit] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
       [junit] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
       [junit] at java.lang.Thread.run(Thread.java:595)
       [junit] [main] 07:22:59,724 INFO [org.hornetq.core.server.impl.HornetQServerImpl] HornetQ Server version 2.0.0.BETA5 (hornet-baby, 108) stopped
      


      I need to investigate further but it seems that the intermittent failure occurs when we close a connection while something is read on it (a ping?) and the connection resources are not properly cleaned up.