[jboss-jira] [JBoss JIRA] Updated: (JBMESSAGING-1263) Race condition on MessageQueue::informSuckers

Clebert Suconic (JIRA) jira-events at lists.jboss.org
Tue Mar 25 23:34:40 EDT 2008


     [ http://jira.jboss.com/jira/browse/JBMESSAGING-1263?page=all ]

Clebert Suconic updated JBMESSAGING-1263:
-----------------------------------------

        Summary: Race condition on MessageQueue::informSuckers  (was: PreserveOrderingTest::testPreserveOrderingTopicPersistent and testPreserveOrderingTopicNonPersistent will eventually fail)
    Description: 
When you close a Durable Subscriber right after it's being opened, in a race condition,  you could have one thread setting ReceiversReady(true) and another setting ReceiversReady(false).

Change these test to run in repetition, and they will easily fail:

PreserveOrderingTest::testPreserveOrderingTopicPersistent and testPreserveOrderingTopicNonPersistent will eventually fail

   public void testPreserveOrderingTopicPersistent() throws Exception
   {
      for (int i=0;i<25;i++)
      {
         log.info("**************************************");
         log.info("testPreserveOrderingTopicPersistent " + i);
         log.info("**************************************");
         preserveOrderingDurableSub(true);
      }
   }
   
   public void testPreserveOrderingTopicNonPersistent() throws Exception
   {
      for (int i=0;i<25;i++)
      {
         log.info("**************************************");
         log.info("testPreserveOrderingTopicNonPersistent " + i);
         log.info("**************************************");
         preserveOrderingDurableSub(false);
      }
   }   


  was:
Change these test to run in repetition, and they will easily fail:

   public void testPreserveOrderingTopicPersistent() throws Exception
   {
      for (int i=0;i<25;i++)
      {
         log.info("**************************************");
         log.info("testPreserveOrderingTopicPersistent " + i);
         log.info("**************************************");
         preserveOrderingDurableSub(true);
      }
   }
   
   public void testPreserveOrderingTopicNonPersistent() throws Exception
   {
      for (int i=0;i<25;i++)
      {
         log.info("**************************************");
         log.info("testPreserveOrderingTopicNonPersistent " + i);
         log.info("**************************************");
         preserveOrderingDurableSub(false);
      }
   }   



> Race condition on MessageQueue::informSuckers
> ---------------------------------------------
>
>                 Key: JBMESSAGING-1263
>                 URL: http://jira.jboss.com/jira/browse/JBMESSAGING-1263
>             Project: JBoss Messaging
>          Issue Type: Bug
>    Affects Versions: 1.4.1.beta1, 1.4.0.SP3_CP01
>            Reporter: Clebert Suconic
>         Assigned To: Clebert Suconic
>             Fix For: 1.4.0.SP3.CP02, 1.4.1.beta2
>
>
> When you close a Durable Subscriber right after it's being opened, in a race condition,  you could have one thread setting ReceiversReady(true) and another setting ReceiversReady(false).
> Change these test to run in repetition, and they will easily fail:
> PreserveOrderingTest::testPreserveOrderingTopicPersistent and testPreserveOrderingTopicNonPersistent will eventually fail
>    public void testPreserveOrderingTopicPersistent() throws Exception
>    {
>       for (int i=0;i<25;i++)
>       {
>          log.info("**************************************");
>          log.info("testPreserveOrderingTopicPersistent " + i);
>          log.info("**************************************");
>          preserveOrderingDurableSub(true);
>       }
>    }
>    
>    public void testPreserveOrderingTopicNonPersistent() throws Exception
>    {
>       for (int i=0;i<25;i++)
>       {
>          log.info("**************************************");
>          log.info("testPreserveOrderingTopicNonPersistent " + i);
>          log.info("**************************************");
>          preserveOrderingDurableSub(false);
>       }
>    }   

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list