activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (JIRA)" <j...@apache.org>
Subject [jira] [Reopened] (AMQ-3817) Marshalled properties don't get updated if modified during preProcessDispatch (TraceBrokerPathPlugin looks broken)
Date Fri, 18 May 2012 12:56:07 GMT

     [ https://issues.apache.org/jira/browse/AMQ-3817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Timothy Bish reopened AMQ-3817:
-------------------------------


You probably don't want to mark this as resolved until someone reviews it and actually commits
the patch
                
> Marshalled properties don't get updated if modified during preProcessDispatch (TraceBrokerPathPlugin
looks broken)
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-3817
>                 URL: https://issues.apache.org/jira/browse/AMQ-3817
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.1
>            Reporter: Raul Kripalani
>              Labels: marshaling, openwire, plugin
>             Fix For: 5.5.1, 5.6.0
>
>         Attachments: amq-tracebrokerpath-fix.diff, amq-tracebrokerpath-testcase.diff
>
>
> Enabling the TraceBrokerPathPlugin with a custom property name = 'JMSXTrace' sends outdated
information to the consumer. When inspecting the property at the consumer code, it has not
been updated with the complete broker path. Only the first broker, where the message was produced
into, appears. No matter how many brokers are in the route (tested with 4).
> Having dug into the code, it looks like marshalledProperties in Message were already
set but not dirtied when setProperty was called again from the TraceBrokerPathPlugin. Also,
Message.beforeMarshall() assumes that since marshalledProperties is already set, it doesn't
need updating. Therefore, the message is dispatched to the consumer with an old version of
the properties.
> I think Message.setProperty() should check whether marshalledProperties already has a
value. If it does, it should re-marshall (i.e. dirty the cache).

--
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

        

Mime
View raw message