Skip to content
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: splitting MergedWarpMessage enhances the server parallel processing capability #6807

Open
wants to merge 11 commits into
base: 2.x
Choose a base branch
from

Conversation

funky-eyes
Copy link
Contributor

@funky-eyes funky-eyes commented Sep 3, 2024

  • I have registered the PR changes.

Ⅰ. Describe what this PR did

当client为2.3.0时,server将merge msg还原回单独的rpcmsg,使其通过msg类型定位到对应的线程池,放入线程池中处理
client为2.3.0时,可直接通过单个response的id定位到future进行响应client的请求,并清理mergemap,避免因为由于单个响应导致client的mergemap无限膨胀无法清理的问题
而由于2.3的client可能跟多个版本server通信,多个版本的client也可能跟2.3server通信,所以老的逻辑不进行改变向下兼容。

Ⅱ. Does this pull request fix one issue?

fixes #6775

Ⅲ. Why don't you add test cases (unit test/integration test)?

Ⅳ. Describe how to verify it

Ⅴ. Special notes for reviews

@funky-eyes funky-eyes added this to the 2.x Backlog milestone Sep 3, 2024
Copy link

codecov bot commented Sep 3, 2024

Codecov Report

Attention: Patch coverage is 34.21053% with 25 lines in your changes missing coverage. Please review.

Project coverage is 52.51%. Comparing base (145b33c) to head (ac60802).

Files with missing lines Patch % Lines
...ta/core/rpc/netty/AbstractNettyRemotingServer.java 22.22% 13 Missing and 1 partial ⚠️
...pc/processor/client/ClientOnResponseProcessor.java 9.09% 10 Missing ⚠️
...n/java/org/apache/seata/core/protocol/Version.java 83.33% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff              @@
##                2.x    #6807      +/-   ##
============================================
+ Coverage     52.41%   52.51%   +0.09%     
- Complexity     6378     6389      +11     
============================================
  Files          1080     1080              
  Lines         37558    37582      +24     
  Branches       4452     4454       +2     
============================================
+ Hits          19687    19737      +50     
+ Misses        15919    15898      -21     
+ Partials       1952     1947       -5     
Files with missing lines Coverage Δ
...ta/core/rpc/netty/AbstractNettyRemotingClient.java 29.66% <100.00%> (+0.33%) ⬆️
...he/seata/core/rpc/netty/RmNettyRemotingClient.java 52.59% <100.00%> (ø)
...he/seata/core/rpc/netty/TmNettyRemotingClient.java 72.54% <100.00%> (ø)
...n/java/org/apache/seata/core/protocol/Version.java 68.29% <83.33%> (-2.44%) ⬇️
...pc/processor/client/ClientOnResponseProcessor.java 18.91% <9.09%> (+0.16%) ⬆️
...ta/core/rpc/netty/AbstractNettyRemotingServer.java 30.70% <22.22%> (-1.59%) ⬇️

... and 6 files with indirect coverage changes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement an independent ChannelDuplexHandler for MergedWarpMessage
1 participant