-
Notifications
You must be signed in to change notification settings - Fork 8.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
optimize : Eliminate RpcMessage and Encoder/Decoder dependencies #6209
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## 2.x #6209 +/- ##
============================================
- Coverage 51.13% 50.28% -0.85%
+ Complexity 5317 5253 -64
============================================
Files 950 944 -6
Lines 33448 33382 -66
Branches 4048 4042 -6
============================================
- Hits 17103 16786 -317
- Misses 14666 14969 +303
+ Partials 1679 1627 -52
|
…-msg # Conflicts: # core/src/main/java/org/apache/seata/core/rpc/netty/AbstractNettyRemoting.java # core/src/main/java/org/apache/seata/core/rpc/netty/ProtocolRpcMessage.java # core/src/main/java/org/apache/seata/core/rpc/netty/v0/ProtocolRpcMessageV0.java # core/src/main/java/org/apache/seata/core/rpc/netty/v1/ProtocolRpcMessageV1.java # core/src/main/java/org/apache/seata/core/rpc/netty/v1/ProtocolV1Decoder.java # test/src/test/java/org/apache/seata/core/rpc/netty/v1/ClientChannelHandler.java # test/src/test/java/org/apache/seata/core/rpc/netty/v1/ProtocolV1SerializerTest.java # test/src/test/java/org/apache/seata/core/rpc/netty/v1/ServerChannelHandler.java
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Ⅰ. Describe what this PR did
新引入ProtocolRpcMessage(接口),用以解开rpcmessage和encoder/decoder的依赖关系。encoder/decoder只依赖ProtocolRpcMessage(支持不同版本协议的区分),而原有的RpcMessage继续服务于协议解析后的业务逻辑
A new ProtocolRpcMessage interface is introduced to decouple rpcmessage from encoder/decoder, which only relies on ProtocolRpcMessage (to support differentiation between different versions of the protocol), while the original RpcMessage continues to serve the The original RpcMessage continues to serve the business logic after the protocol is parsed.
Ⅱ. Does this pull request fix one issue?
fixes #6210
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews