activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AMQ-6222) Message content can be cleared by mistake when isReduceMemoryFootprint is enabled
Date Mon, 18 Apr 2016 11:56:25 GMT

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

ASF subversion and git services commented on AMQ-6222:
------------------------------------------------------

Commit 9d545cf11f2ed999d68da7b5a16e46adee095a08 in activemq's branch refs/heads/activemq-5.13.x
from [~cshannon]
[ https://git-wip-us.apache.org/repos/asf?p=activemq.git;h=9d545cf ]

https://issues.apache.org/jira/browse/AMQ-6222

Reverting the change to move clearMarshalledState into the callback
listener as beforeMarshall is now called before the async message add

Revert 7f5c09f2d77c77f87a47fb738870c5ee5bc78c27


> Message content can be cleared by mistake when isReduceMemoryFootprint is enabled
> ---------------------------------------------------------------------------------
>
>                 Key: AMQ-6222
>                 URL: https://issues.apache.org/jira/browse/AMQ-6222
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.13.2
>            Reporter: Christopher L. Shannon
>            Assignee: Christopher L. Shannon
>             Fix For: 5.14.0, 5.13.3
>
>
> In a Queue when isReduceMemoryFootprint is enabled the message state should be cleared
after persisting to the store.  The idea is that once the data is marshalled into its byte
content we can clear out the properties, text, etc to free up memory.
> The problem is that when concurrent dispatch is enabled, messages are added to the store
asynchronously and queued up.  There is a race condition because it's possible for the state
to be cleared before the store has a chance to process the message so that when it gets to
it, it will be null.  This is most notable when using the VM transport as messages with null
content will get dispatched.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message