When writing unit tests for rocketmq-remoting, I found that RocketMQSerializable misused the charset for RemotingSerializable.
Go into details. The class RemotingCommand has two formats to serialize its header: JSON format (source code RemotingSerializable.java) and ROCKETMQ (source code RocketMQSerializable.java) format, respectively. Both formats have their own encode method, decode method and charset. But methods in RocketMQSerializable.java use the charset for RemotingSerializable.java.
Although two charsets are both UTF-8 thus no problem occurs so far, but it's better to modify to make the code commonsensible