You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Artyom A. Konovalenko (JIRA)" <ji...@apache.org> on 2018/10/24 01:51:00 UTC

[jira] [Commented] (AMQ-6690) Protect against JMX move/copy operations onto self

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

Artyom A. Konovalenko commented on AMQ-6690:
--------------------------------------------

Hi, Gary.
Can you clarify why move and copy "are intended to move/copy messages to another destination"? What's wrong with indended move or copy to the same dest? What if I intentionally move or copy messages to the same destination (say I may wish to reorder matching messages and move to the tail). Without ability to move to itself I should move to intermediate queue and then move back. Why you added this additional step?


Really your fix has broken our scripts. We are using moveMatchingMessagesTo (with limit) to move all messages to the same destination. The only reason of this operation is KahaDB log structure. We use ActiveMQ to keep list of files that we want to download. The list is not persistent and kept in TempStore. Download process is slow and the list can grow to 3000000 urls and above. Because of this one slow consumer and many other fast consumers (for other queues) we have spikes on TempStore usage while we perform downloads. The only workaround we have found was to move messages from 'download' queue to itself, that would messages to another log files and compacts KahaDB. Now with your change we should use one more operation (move Downloads -> TMP, move TMP -> Downloads). 

> Protect against JMX move/copy operations onto self
> --------------------------------------------------
>
>                 Key: AMQ-6690
>                 URL: https://issues.apache.org/jira/browse/AMQ-6690
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: JMX
>    Affects Versions: 5.14.0
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>            Priority: Major
>             Fix For: 5.15.0
>
>
> The move and copy jmx operations are intended to move/copy messages to another destination. However this is not enforce and if the move/copy destination is the same queue the logs fill with duplicate warnings etc and the stats can get out of sync if the operation is repeated or concurrent.
> Best to cut this off at the pass with a return return code indicating nothing was moved/copied.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)