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)