You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by "Kirill Titov (JIRA)" <ji...@apache.org> on 2013/12/15 22:40:07 UTC

[jira] [Updated] (APLO-344) Ack removes more than one message from the queue

     [ https://issues.apache.org/jira/browse/APLO-344?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kirill Titov updated APLO-344:
------------------------------

    Description: 
{code}$queueName = '/queue/test';
$queue->send(1, $queueName);
$queue->send(2, $queueName);
$queue->send(3, $queueName);
$queue->send(4, $queueName);
$queue->send(5, $queueName);

$queue->subscribe($queueName);
while ($message = $queue->readFrame()) {
	if ($message['body'] == 3) {
		$queue->ack($message);
	}
}{code}

It removes not only message 3, but also 4 and 5. If I ack message 2, it will remove 2, 3, 4 and 5 and so on. How is this nearly possible?

  was:
{cmd}$queueName = '/queue/test';
$queue->send(1, $queueName);
$queue->send(2, $queueName);
$queue->send(3, $queueName);
$queue->send(4, $queueName);
$queue->send(5, $queueName);

$queue->subscribe($queueName);
while ($message = $queue->readFrame()) {
	if ($message['body'] == 3) {
		$queue->ack($message);
	}
}{cmd}

It removes not only message 3, but also 4 and 5. If I ack message 2, it will remove 2, 3, 4 and 5 and so on. How is this nearly possible?


> Ack removes more than one message from the queue
> ------------------------------------------------
>
>                 Key: APLO-344
>                 URL: https://issues.apache.org/jira/browse/APLO-344
>             Project: ActiveMQ Apollo
>          Issue Type: Bug
>          Components: apollo-stomp
>    Affects Versions: 1.6
>            Reporter: Kirill Titov
>
> {code}$queueName = '/queue/test';
> $queue->send(1, $queueName);
> $queue->send(2, $queueName);
> $queue->send(3, $queueName);
> $queue->send(4, $queueName);
> $queue->send(5, $queueName);
> $queue->subscribe($queueName);
> while ($message = $queue->readFrame()) {
> 	if ($message['body'] == 3) {
> 		$queue->ack($message);
> 	}
> }{code}
> It removes not only message 3, but also 4 and 5. If I ack message 2, it will remove 2, 3, 4 and 5 and so on. How is this nearly possible?



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)