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

[Raft] rollback related optimize #2903

Closed
wants to merge 5 commits into from
Closed

Conversation

critical27
Copy link
Contributor

@critical27 critical27 commented Sep 18, 2021

  1. Apply Raft problem #2483 to v2.x
  2. Some rollback is useless now
  3. Fix a part is reset for every a few seconds while pulling snapshot.
  4. Add a rpc backoff when timeout, we should not retry often to make service worse. Accordingly, optimize not to invalid leader when storage client timeout.

I am still doing some test, don't merge to 2.6.0 plz.

@critical27 critical27 added the ready-for-testing PR: ready for the CI test label Sep 18, 2021
nebula::cpp2::ErrorCode::E_RPC_FAILURE);
context->resp.markFailure();
})
.ensure([context, host] {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good improvement! It's what i want to do like this. Maybe we can do more for all requests by folly::collect

@bright-starry-sky
Copy link
Contributor

Generally LTGM. could you resolve the conflicts?

@codecov-commenter
Copy link

Codecov Report

Merging #2903 (0a243af) into master (dddf54e) will decrease coverage by 0.76%.
The diff coverage is 52.08%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2903      +/-   ##
==========================================
- Coverage   85.47%   84.71%   -0.77%     
==========================================
  Files        1229     1231       +2     
  Lines      110375   110844     +469     
==========================================
- Hits        94341    93897     -444     
- Misses      16034    16947     +913     
Impacted Files Coverage Δ
src/clients/meta/MetaClient.h 92.30% <ø> (ø)
src/common/utils/NebulaKeyUtils.cpp 89.03% <0.00%> (-4.89%) ⬇️
src/common/utils/NebulaKeyUtils.h 78.02% <ø> (ø)
src/graph/planner/plan/Admin.cpp 54.23% <0.00%> (-2.40%) ⬇️
src/graph/planner/plan/PlanNode.h 80.00% <ø> (ø)
src/graph/service/PermissionCheck.cpp 83.72% <ø> (+2.32%) ⬆️
src/kvstore/KVEngine.h 100.00% <ø> (ø)
src/kvstore/NebulaSnapshotManager.cpp 82.92% <ø> (ø)
src/kvstore/RocksEngine.cpp 81.79% <0.00%> (-1.73%) ⬇️
src/kvstore/RocksEngine.h 66.66% <0.00%> (-25.00%) ⬇️
... and 119 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e18809b...0a243af. Read the comment docs.

@critical27
Copy link
Contributor Author

I will separate this PR into multiple parts, the problem is more than complicated than I expected. Timeout will open another PR.

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

Successfully merging this pull request may close these issues.

5 participants