[ https://issues.apache.org/jira/browse/AMQ-6221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15234968#comment-15234968 ]
ASF subversion and git services commented on AMQ-6221: ------------------------------------------------------ Commit 078da5e7f8b2cff44899332dde5db53bfc3a7ffc in activemq's branch refs/heads/activemq-5.13.x from [~cshannon] [ https://git-wip-us.apache.org/repos/asf?p=activemq.git;h=078da5e ] Revert "https://issues.apache.org/jira/browse/AMQ-6221" This reverts commit 6c2a825ebb516e9b37cdb913800de0306ed7e670. > ActiveMQTextMessage should synchronize on state changes > ------------------------------------------------------- > > Key: AMQ-6221 > URL: https://issues.apache.org/jira/browse/AMQ-6221 > Project: ActiveMQ > Issue Type: Bug > Components: Broker, JMS client > Affects Versions: 5.13.2 > Reporter: Christopher L. Shannon > Assignee: Christopher L. Shannon > Fix For: 5.14.0, 5.13.3 > > > In AMQ-5857, the text field was changed to be cleared after calling > beforeMarshall on a text message. This is causing general concurrency issues > when multiple threads access the message. The most notable issue is when > using the VM transport and concurrent store and dispatch is turned on for > KahaDB as seen in AMQ-6218. In that ticket I re-arranged the order a bit on > copy to help with the race condition but it is still theoretically possible. > We need to add explicit synchronization when reading/writing the > marshalled/unmarshalled state fields to prevent the race condition in > ActiveMQTextMessage. > Right now ActiveMQTextMessage is the main issue since it has been changed to > clear out text on marshalling by default. Map and Object messages don't > currently clear out their data by default like text message does so they > aren't currently affected but would need synchronization added in a future > commit if the same strategy was followed. -- This message was sent by Atlassian JIRA (v6.3.4#6332)