You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Marnie McCormack (JIRA)" <qp...@incubator.apache.org> on 2007/02/23 16:01:05 UTC

[jira] Created: (QPID-390) Incorrect number of messages received using multiple consumers

Incorrect number of messages received using multiple consumers
--------------------------------------------------------------

                 Key: QPID-390
                 URL: https://issues.apache.org/jira/browse/QPID-390
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
    Affects Versions: M1
            Reporter: Marnie McCormack
             Fix For: M2


Run two consumers against an initial queue depth of 100. After the test, Received Message Count is 4437, rather than 100 e.g. 

/** multiple consumers */
  public void testTwoCompetingConsumers() throws Exception
  {
    Consumer c1 = new Consumer();
    Consumer c2 = new Consumer();
    Thread t1 = new Thread(c1);
    Thread t2 = new Thread(c2);
    t1.start();
    t2.start();
    t1.join();
    t2.join();
    log("consumer 1 count is " + c1.getCount());
    log("consumer 2 count is " + c2.getCount());
    
    Integer totalConsumed = c1.getCount()+c2.getCount();    
    assertEquals("number of consumed messages does not match initial data", numTestMessages, totalConsumed);
  }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (QPID-390) Incorrect number of messages received/counted

Posted by "Bhupendra Bhardwaj (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-390?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bhupendra Bhardwaj resolved QPID-390.
-------------------------------------

    Resolution: Fixed

The redelivered(requeued) messages from channel are marked as redelivered and redelivered messages are not added into the received count.


> Incorrect number of messages received/counted 
> ----------------------------------------------
>
>                 Key: QPID-390
>                 URL: https://issues.apache.org/jira/browse/QPID-390
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: M1
>            Reporter: Marnie McCormack
>         Assigned To: Bhupendra Bhardwaj
>             Fix For: M2
>
>
> Inccorect counting of messages received when run two consumers against an initial queue depth of 100. After the test, Received Message Count is 4437, rather than 100 e.g. 
> /** multiple consumers */
>   public void testTwoCompetingConsumers() throws Exception
>   {
>     Consumer c1 = new Consumer();
>     Consumer c2 = new Consumer();
>     Thread t1 = new Thread(c1);
>     Thread t2 = new Thread(c2);
>     t1.start();
>     t2.start();
>     t1.join();
>     t2.join();
>     log("consumer 1 count is " + c1.getCount());
>     log("consumer 2 count is " + c2.getCount());
>     
>     Integer totalConsumed = c1.getCount()+c2.getCount();    
>     assertEquals("number of consumed messages does not match initial data", numTestMessages, totalConsumed);
>   }
> Related issues around queue depth:
> Send a messageof 102400 bytes and  the message count is one, but the queue depth according to console is zero (should be 102400)
> Run test case below on a fresh broker instance, and test case setup consumes all messages in queue. No depth alerts as expected. Now run it a second time - we see
>  ... QUEUE_DEPTH_ALERT On Queue queue - 4200Kb : Maximum queue depth threshold (4136Kb) breached.
> and eventually
>  ... QUEUE_DEPTH_ALERT On Queue queue - 8200Kb : Maximum queue depth threshold (4136Kb) breached.
> indicating the queue depth is not being reset when the queue is cleared down, but keeps incrementing.
> public void testNearThreshold() throws Exception
>   {
>     assertEquals("payload not correct size", chunkSizeBytes.intValue(), payload.getBytes().length);
>     int copies = 40;
>     conn.put(queue, payload, copies); //puts 40 copies of 100Kb message on queue
>     log("put " + copies + " copies for total bytes: " + copies * chunkSizeBytes);
>   }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (QPID-390) Incorrect number of messages received/counted

Posted by "Marnie McCormack (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-390?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marnie McCormack updated QPID-390:
----------------------------------

    Description: 
Inccorect counting of messages received when run two consumers against an initial queue depth of 100. After the test, Received Message Count is 4437, rather than 100 e.g. 

/** multiple consumers */
  public void testTwoCompetingConsumers() throws Exception
  {
    Consumer c1 = new Consumer();
    Consumer c2 = new Consumer();
    Thread t1 = new Thread(c1);
    Thread t2 = new Thread(c2);
    t1.start();
    t2.start();
    t1.join();
    t2.join();
    log("consumer 1 count is " + c1.getCount());
    log("consumer 2 count is " + c2.getCount());
    
    Integer totalConsumed = c1.getCount()+c2.getCount();    
    assertEquals("number of consumed messages does not match initial data", numTestMessages, totalConsumed);
  }

Related issues around queue depth:

Send a messageof 102400 bytes and  the message count is one, but the queue depth according to console is zero (should be 102400)

Run test case below on a fresh broker instance, and test case setup consumes all messages in queue. No depth alerts as expected. Now run it a second time - we see

 ... QUEUE_DEPTH_ALERT On Queue queue - 4200Kb : Maximum queue depth threshold (4136Kb) breached.

and eventually

 ... QUEUE_DEPTH_ALERT On Queue queue - 8200Kb : Maximum queue depth threshold (4136Kb) breached.

indicating the queue depth is not being reset when the queue is cleared down, but keeps incrementing.

public void testNearThreshold() throws Exception
  {
    assertEquals("payload not correct size", chunkSizeBytes.intValue(), payload.getBytes().length);
    int copies = 40;
    conn.put(queue, payload, copies); //puts 40 copies of 100Kb message on queue
    log("put " + copies + " copies for total bytes: " + copies * chunkSizeBytes);
  }

  was:
Run two consumers against an initial queue depth of 100. After the test, Received Message Count is 4437, rather than 100 e.g. 

/** multiple consumers */
  public void testTwoCompetingConsumers() throws Exception
  {
    Consumer c1 = new Consumer();
    Consumer c2 = new Consumer();
    Thread t1 = new Thread(c1);
    Thread t2 = new Thread(c2);
    t1.start();
    t2.start();
    t1.join();
    t2.join();
    log("consumer 1 count is " + c1.getCount());
    log("consumer 2 count is " + c2.getCount());
    
    Integer totalConsumed = c1.getCount()+c2.getCount();    
    assertEquals("number of consumed messages does not match initial data", numTestMessages, totalConsumed);
  }

        Summary: Incorrect number of messages received/counted   (was: Incorrect number of messages received using multiple consumers)

> Incorrect number of messages received/counted 
> ----------------------------------------------
>
>                 Key: QPID-390
>                 URL: https://issues.apache.org/jira/browse/QPID-390
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: M1
>            Reporter: Marnie McCormack
>             Fix For: M2
>
>
> Inccorect counting of messages received when run two consumers against an initial queue depth of 100. After the test, Received Message Count is 4437, rather than 100 e.g. 
> /** multiple consumers */
>   public void testTwoCompetingConsumers() throws Exception
>   {
>     Consumer c1 = new Consumer();
>     Consumer c2 = new Consumer();
>     Thread t1 = new Thread(c1);
>     Thread t2 = new Thread(c2);
>     t1.start();
>     t2.start();
>     t1.join();
>     t2.join();
>     log("consumer 1 count is " + c1.getCount());
>     log("consumer 2 count is " + c2.getCount());
>     
>     Integer totalConsumed = c1.getCount()+c2.getCount();    
>     assertEquals("number of consumed messages does not match initial data", numTestMessages, totalConsumed);
>   }
> Related issues around queue depth:
> Send a messageof 102400 bytes and  the message count is one, but the queue depth according to console is zero (should be 102400)
> Run test case below on a fresh broker instance, and test case setup consumes all messages in queue. No depth alerts as expected. Now run it a second time - we see
>  ... QUEUE_DEPTH_ALERT On Queue queue - 4200Kb : Maximum queue depth threshold (4136Kb) breached.
> and eventually
>  ... QUEUE_DEPTH_ALERT On Queue queue - 8200Kb : Maximum queue depth threshold (4136Kb) breached.
> indicating the queue depth is not being reset when the queue is cleared down, but keeps incrementing.
> public void testNearThreshold() throws Exception
>   {
>     assertEquals("payload not correct size", chunkSizeBytes.intValue(), payload.getBytes().length);
>     int copies = 40;
>     conn.put(queue, payload, copies); //puts 40 copies of 100Kb message on queue
>     log("put " + copies + " copies for total bytes: " + copies * chunkSizeBytes);
>   }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (QPID-390) Incorrect number of messages received/counted

Posted by "Bhupendra Bhardwaj (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-390?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bhupendra Bhardwaj reassigned QPID-390:
---------------------------------------

    Assignee: Bhupendra Bhardwaj

> Incorrect number of messages received/counted 
> ----------------------------------------------
>
>                 Key: QPID-390
>                 URL: https://issues.apache.org/jira/browse/QPID-390
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: M1
>            Reporter: Marnie McCormack
>         Assigned To: Bhupendra Bhardwaj
>             Fix For: M2
>
>
> Inccorect counting of messages received when run two consumers against an initial queue depth of 100. After the test, Received Message Count is 4437, rather than 100 e.g. 
> /** multiple consumers */
>   public void testTwoCompetingConsumers() throws Exception
>   {
>     Consumer c1 = new Consumer();
>     Consumer c2 = new Consumer();
>     Thread t1 = new Thread(c1);
>     Thread t2 = new Thread(c2);
>     t1.start();
>     t2.start();
>     t1.join();
>     t2.join();
>     log("consumer 1 count is " + c1.getCount());
>     log("consumer 2 count is " + c2.getCount());
>     
>     Integer totalConsumed = c1.getCount()+c2.getCount();    
>     assertEquals("number of consumed messages does not match initial data", numTestMessages, totalConsumed);
>   }
> Related issues around queue depth:
> Send a messageof 102400 bytes and  the message count is one, but the queue depth according to console is zero (should be 102400)
> Run test case below on a fresh broker instance, and test case setup consumes all messages in queue. No depth alerts as expected. Now run it a second time - we see
>  ... QUEUE_DEPTH_ALERT On Queue queue - 4200Kb : Maximum queue depth threshold (4136Kb) breached.
> and eventually
>  ... QUEUE_DEPTH_ALERT On Queue queue - 8200Kb : Maximum queue depth threshold (4136Kb) breached.
> indicating the queue depth is not being reset when the queue is cleared down, but keeps incrementing.
> public void testNearThreshold() throws Exception
>   {
>     assertEquals("payload not correct size", chunkSizeBytes.intValue(), payload.getBytes().length);
>     int copies = 40;
>     conn.put(queue, payload, copies); //puts 40 copies of 100Kb message on queue
>     log("put " + copies + " copies for total bytes: " + copies * chunkSizeBytes);
>   }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.