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

Implementing Flexible Raft with NWR #1038

Closed
wants to merge 3 commits into from
Closed

Implementing Flexible Raft with NWR #1038

wants to merge 3 commits into from

Conversation

1294566108
Copy link
Contributor

1.结合 Quorum NWR 模型实现 Flexible Raft
2.为Flexible Raft添加 resetfactor API,用于动态调节factor大小

1294566108 and others added 2 commits October 30, 2023 16:49
* feat(iterator):Auto commit mode for applying log iterator

* feat(iterator):Auto commit mode for applying log iterator

* feat(iterator):Correction parameter name

* feat(iterator):mvn compile

* feat(iterator):Modify comments and annotations

* feat(iterator):Modify comments

* feat(iterator):Modify comments

* feat(rfcs):Add rfcs for Flexible-Raft-with-NWR

* feat(rfcs):Add stepDown change logic and modify parameter name for rfcs

* feat(rfcs):Modify factor calculation rules for rfcs

* feat(rfcs):Modify some language expressions

* feat(rfcs):Implementing Flexible Raft with NWR

* feat(rfcs):compile project

* feat(rfcs):compile project

* feat(rfcs):Remove useless and redundant code

* feat(rfcs):Add rfcs

* feat(flexible):add flexible mode fot Jraft

* feat(flexible):Modify rfc doc

* feat(flexible):Modify quorum code design

* feat(factor):Add ResetFactor API

* feat(flexible):compile code

* feat(flexible):modify code

* feat(flexible):modify code

* feat(flexible):compile code

* fix(flexible):modify raft.desc

* fix(flexible):modify MarshallerHelper

* fix(flexible):modify MarshallerHelper

* fix(flexible):modify RAFT.DESC

* fix(flexible):Modifying comments and code formats

* fix(flexible):Added factor persistence for log storage and Adapt to write heartbeat for w<r situations

* fix(flexible):compile code

* fix(flexible):modify test

* fix(flexible):modify test

* fix(flexible):modify code with proto version changing

* fix(flexible):modify code with proto version changing

* fix(flexible):modify code format

* fix(flexible):modify code format

* fix(flexible):change protoc version from 2.6.1 to 3.5.1

* fix(flexible):modify Class RaftError

* fix(flexible):modify Class format

* fix(flexible):modify Class format

* fix(flexible):modify Class format

* fix(flexible):change int64 to int32 in proto

* fix(flexible):change int64 to int32 in proto

* fix(flexible):avoid importing *

* fix(flexible):change comment

* fix(flexible):add this for voteCtx and preVoteCtx

* fix(flexible):change import order

* fix(flexible):change import order

* feat(flexible):Place attributes such as quorum, factor, and isEnableFlexible into Configuration

* feat(flexible):check format

* feat(flexible):Add test code for resetFactor API

* feat(flexible):modify code format

* feat(flexible):enable flexible check

* feat(flexible):comment useless code

* feat(flexible):modify code

* feat(flexible):Persisting the quorum attribute

* fix(flexible):Delete redundant haveFactor judgments

* fix(flexible):Add necessary null judgment

* fix(flexible):remove config null parameter

* fix(flexible):modify code

* fix(flexible):modify some logic mistakes、remove unused method and add BallotTest

* fix(flexible):modify config check

* fix(flexible):modify config check

* fix(flexible):remove Redundant code

* fix(flexible):remove some check and add NodeOptions.setFactor method

* fix(flexible):remove redundant code

* fix(flexible):解决majority模式下,空指针异常问题

* fix(flexible):修改部分set quorum逻辑,

* feature(flexible):添加flexible raft 测试模块

* feature(flexible):check code format

* feature(flexible):remove code

* feature(flexible):remove redundant blank lines

* feature(flexible):modify test module

* fix(LogManagerTest):modify code format

* fix(LogManagerTest):modify code format

* fix(LogManagerTest):modify code format

* feature(flexible):modify test module in core

* fix(test_core):modify test—core code

* fix(test_module):modify test_core

* fix(test_module):modify testTripleNodesV1V2Codec temporarily

* fix(test_module):modify testTripleNodesV1V2Codec temporarily

* fix(test_module):modify testTripleNodesV1V2Codec temporarily

* fix(test_module):modify testTripleNodesV1V2Codec temporarily

* fix(test_module):modify V1V2Codec error

* fix(test_module):modify V1V2Codec error

* fix(test_module):modify V1V2Codec error

* fix(test_module):modify resetPeers error

* fix(test_module):modify changePeerChaps test error

* fix(test_module):modify v1decoder error

* fix(test_module):modify v1decoder error

* fix(test_module):modify storage test

* fix(test_module):modify storage test

* fix(test_module):modify node test

* fix(test_module):modify node test

* modify code

* modify code

* modify code

---------

Co-authored-by: yuanziwei <yuanziwei@xiaohongshu.com>
@1294566108 1294566108 closed this by deleting the head repository Nov 13, 2023
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.

1 participant