5 Replies Latest reply on Nov 26, 2009 6:16 AM by trustin

    Something wrong with HornetQFrameDecode?

    clebert.suconic

      Hudson seems less stable now, with more failures then what we used to have.

      I was doing some investigation then.

      I started by looking into MessageHeaderTest::testMessageOrderTopic.

      I was reverting to previous changes until I found the commit where it started to fail.


      My conclusion was, there is definitely something wrong with the HornetQFrameDecode change.


      Look at org.hornetq.jms.tests.message.MessageHeaderTest


      Add the usual loop test:



      public void testLoop() throws Exception
       {
       for (int i = 0 ; i < 5000; i++)
       {
       System.out.println("<<<<<<<<<<<<<<<<<<<<<< " + i + " >>>>>>>>>>>>>>>>>>>>>");
       testMessageOrderTopic();
       tearDown();
       setUp();
       }
       }
      



      Now, update the svn to r8341 which was before Trustin's (or/and) Tim's changes on the FrameDecoders.

      The test loop will always pass.


      Now, do the same at r8355:

      r8355 | trustin | 2009-11-20 21:07:33 -0600 (Fri, 20 Nov 2009) | 5 lines
      
      Resolved issue: HORNETQ-221 (Refactor HornetQFrameDecoder and FrameDecoder)
      * Rewrote HornetQFrameDecoder
      ** Outperforms previous implementation by eliminating unnecessary memory copy
      ** Always generates a dynamic buffer
      



      the same test will consistently fail. It always fail before 300 for me.



      I also used trunk, with the recent changes on the journal while reverting trustin's changes. It didn't fail.


      so, there's definetely something wrong with the commit at r8355. I will be investigating it and talking to Trustin later today