qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alan Conway (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (QPID-5116) QMF method "queueMoveMessages" loses one message when moving to full queue
Date Thu, 05 Sep 2013 13:09:52 GMT

    [ https://issues.apache.org/jira/browse/QPID-5116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13759041#comment-13759041
] 

Alan Conway commented on QPID-5116:
-----------------------------------

2 suggestions
- move the call to f() up to before the acquire call.
- add try catch around the main scope so that the dequeueFromStore calls happen even if there
is an exception.
                
> QMF method "queueMoveMessages" loses one message when moving to full queue
> --------------------------------------------------------------------------
>
>                 Key: QPID-5116
>                 URL: https://issues.apache.org/jira/browse/QPID-5116
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>    Affects Versions: 0.22
>            Reporter: Pavel Moravec
>            Priority: Minor
>         Attachments: QPID-5116.patch
>
>
> Invoking QMF method "queueMoveMessages" where destination queue can't handle all moved
messages due to its capacity, one message is lost.
> Reproducer:
> $ qpid-receive -a "tinyQueue; {create:always, node:{ x-declare:{ arguments:{'qpid.max_count':100}}}}"
> $ qpid-send -a "fromQueue; {create:always}" -m 1000
> $ qpid-tool
> Management Tool for QPID
> qpid: list broker
> Object Summary:
>     ID   Created   Destroyed  Index
>     =======================================
>     117  08:11:52  -          amqp-broker
> qpid: call 117 queueMoveMessages fromQueue tinyQueue 300 {}
> qpid: resource-limit-exceeded: Policy exceeded on tinyQueue, policy: size: max=104857600,
current=1000; count: max=100, current=100; type=reject (qpid/broker/QueuePolicy.cpp:92) (7)
- {}
> qpid: quit
> Exiting...
> $ qpid-stat -q
> Queues
>   queue                                     dur  autoDel  excl  msg   msgIn  msgOut 
bytes  bytesIn  bytesOut  cons  bind
>   =========================================================================================================================
>   3d03d063-4f1e-4cc2-822f-00d95d7e42e9:0.0       Y        Y        0     0      0   
   0      0        0         1     2
>   fromQueue                                                      899  1.00k   101   
8.99k  10.0k    1.01k        0     1
>   tinyQueue                                                      100   100      0   
1.00k  1.00k       0         0     1
> $
> See fromQueue has dequeued 101 messages while tinyQueue enqueued just 100.
> (relevant discussion: http://qpid.2158936.n2.nabble.com/QMF-method-quot-queueMoveMessages-quot-can-loose-one-message-td7597804.html)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Mime
View raw message