Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-6256

ConcurentStoreAndDispatch can lead to inconsistent message states using VM Transport

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 5.13.2
    • 5.13.3, 5.14.0
    • Broker
    • None

    Description

      When messages are added to a store asynchronously (when using concurrent store and dispatch) and then dispatched to a consumer at the same time, there is a race condition that can occur primarily with the VM Transport. The issue is that it's possible that when the VM Transport is copying the message for dispatch, the async task can run at the same time to store the message. It's possible that the copy on dispatch can occur during the same time the async store task is trying to marshall the data and properties which can lead to an inconsistent state of the message (ie null content). This is the cause of the issue in AMQ-6218.

      The proper fix for this is to make sure the beforeMarshall method is called prior to the task running and prior to dispatch.

      Attachments

        Issue Links

          Activity

            People

              cshannon Christopher L. Shannon
              cshannon Christopher L. Shannon
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: