Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
P
picodata
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Container Registry
Model registry
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
core
picodata
Merge requests
!678
refactor: simplify raft entry proposal
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
refactor: simplify raft entry proposal
gmoshkin/refactor-entry-context
into
master
Overview
8
Commits
2
Pipelines
10
Changes
12
Merged
Georgy Moshkin
requested to merge
gmoshkin/refactor-entry-context
into
master
1 year ago
Overview
8
Commits
2
Pipelines
10
Changes
12
Expand
Summary
refactor: simplify raft entry proposal
remove logical clock from raft entry context, (term, index) is used for synchronization instead
this allows us to remove the Notify/Notifier boilerplate
NodeImpl::notifications -> NodeImpl::read_state_wakers
this and the recently refactored proc_join finally allows us to remove OpResult
ContextCoercion & CoercionError are also removed for the sake of simplification
fix: forbid direct proposal of entries on followers
removed method NodeImpl::propose (propose_async replaces it)
make NodeImpl::propose_async return Error on followers, only leader can propose entries directly, others should use CAS
remove all tests which used direct entry proposal on followers, they're not needed anymore
Close
#367 (closed)
Close
#309 (closed)
Close
#370 (closed)
Close
#195 (closed)
Edited
1 year ago
by
Yaroslav Dynnikov
0
0
Merge request reports
Loading