Uploaded image for project: 'Apache RocketMQ'
  1. Apache RocketMQ
  2. ROCKETMQ-211

There should be a namespace mechanism in Message properties to avoid conflict

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 4.0.0-incubating, 4.1.0-incubating, 4.2.0, 4.3.0
    • Fix Version/s: None
    • Component/s: rocketmq-commons
    • Labels:
      None
    • Environment:
      All Environments

      Description

      There are tow kinds of Message properties: RocketMQ reserved properties and user-defined properties, but they are not separated in strict way. For example ,in the following case conflict will happen:
      1) The user used a user-defined Message property "PROPERTY_A" in their application based on RocketMQ4.3.
      2) When developing RocketMQ4.4, a new RocketMQ reserved property also named "PROPERTY_A" is added.
      3) When the user upgrade RocketMQ from 4.3 to 4.4, the application will not work well, it will receive an exception "The Property PROPERTY_A is used by system, input another please".

      So, there should be a Name Space mechanism to distinguish user-defined and RocketMQ reserved properties. One approach could be: Adding a prefix, such as "USER/" or "SYSTEM/" to the property name when storing a property.

        Attachments

          Activity

            People

            • Assignee:
              lollipop Jixiang Jin
              Reporter:
              binzhaomobile binzhaomobile
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: