[ 
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

        

Reply via email to