You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/09/11 19:52:00 UTC

[jira] [Commented] (ARTEMIS-2082) AMQP: Message corruption possible on redelivered message that have moved

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

ASF GitHub Bot commented on ARTEMIS-2082:
-----------------------------------------

GitHub user tabish121 opened a pull request:

    https://github.com/apache/activemq-artemis/pull/2304

    ARTEMIS-2082 Reset buffer valid flag after re-encoding the message

    Once a re-encode of the message is done the buffer is not being marked
    as valid and so subsequent checks on the buffer are all assuming the
    message data is not valid and re-encoding over and over.  This can lead
    to poor performance in some cases and corrupted data in others.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/tabish121/activemq-artemis ARTEMIS-2082

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/activemq-artemis/pull/2304.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #2304
    
----
commit e065e3e960ac8cc6505a71ec4f67b58b4ffb5990
Author: Timothy Bish <ta...@...>
Date:   2018-09-11T19:42:24Z

    ARTEMIS-2082 Reset buffer valid flag after re-encoding the message
    
    Once a re-encode of the message is done the buffer is not being marked
    as valid and so subsequent checks on the buffer are all assuming the
    message data is not valid and re-encoding over and over.  This can lead
    to poor performance in some cases and corrupted data in others.

----


> AMQP: Message corruption possible on redelivered message that have moved
> ------------------------------------------------------------------------
>
>                 Key: ARTEMIS-2082
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2082
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: AMQP
>    Affects Versions: 2.6.3
>            Reporter: Timothy Bish
>            Assignee: Timothy Bish
>            Priority: Major
>             Fix For: 2.7.0
>
>
> In some cases when a message moves from one Queue to another either by expiration or other policy defined reason the messages that are sent to clients on the new location of the message can become corrupted if the the client consumes but does not settle the message.  This can occur for instance with a transacted consumer that continually rolls back the message and then consumes it again.  The message eventually becomes corrupt as the broker's internal AMQPMessage object loses track of the location of various portions of the message data and re-encodes the header to add a delivery count etc.



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