[
https://issues.apache.org/jira/browse/AMQ-3846?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Timothy Bish resolved AMQ-3846.
-------------------------------
Resolution: Fixed
Fix Version/s: 5.7.0
Assignee: Timothy Bish
Fix and new tests added to trunk.
> The JMX message move, copy and remove operation do not take messages in FIFO
> order
> ----------------------------------------------------------------------------------
>
> Key: AMQ-3846
> URL: https://issues.apache.org/jira/browse/AMQ-3846
> Project: ActiveMQ
> Issue Type: Bug
> Components: JMX
> Affects Versions: 5.5.1, 5.6.0
> Reporter: David Harp
> Assignee: Timothy Bish
> Fix For: 5.7.0
>
>
> When a page is pulled in, it is placed in a LinkedHashMap which preserves the
> queue order, but the below code then pulls the values from the LinkedHashMap
> and puts them in a Set. This causes the FIFO order of the queue to be lost.
> If the number of max messages to move is smaller the the page size, then the
> outcome looks like random messages from the queue being moved (copied or
> removed).
> ...
> Set<MessageReference> set = new HashSet<MessageReference>();
> ConnectionContext context = createConnectionContext();
> do {
> doPageIn(true);
> pagedInMessagesLock.readLock().lock();
> try{
> set.addAll(pagedInMessages.values());
> }finally {
> pagedInMessagesLock.readLock().unlock();
> }
> ...
> Can this be changed to preserve the queue order?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira