[
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: [email protected]
For additional commands, e-mail: [email protected]