You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@rocketmq.apache.org by "binzhaomobile (JIRA)" <ji...@apache.org> on 2017/06/04 02:44:04 UTC

[jira] [Created] (ROCKETMQ-211) There should be a namespace mechanism in Message properties to avoid conflict

binzhaomobile created ROCKETMQ-211:
--------------------------------------

             Summary: There should be a namespace mechanism in Message properties to avoid  conflict
                 Key: ROCKETMQ-211
                 URL: https://issues.apache.org/jira/browse/ROCKETMQ-211
             Project: Apache RocketMQ
          Issue Type: Improvement
          Components: rocketmq-commons
    Affects Versions: 4.0.0-incubating, 4.1.0-incubating, 4.2.0-incubating, 4.3.0-incubating
         Environment: All Environments
            Reporter: binzhaomobile
            Assignee: Jixiang Jin
            Priority: Minor


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.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)