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)

Reply via email to