-
Notifications
You must be signed in to change notification settings - Fork 399
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: provide protection against unbounded Raft log growth #131
Comments
@utsl42 mentioned they might want to take a crack at this. |
@siddontang @Hoverbear I am interested in taking this issue, can you assign this to me? |
@Ishiihara Please consider yourself assigned! (We can't assign you an issue on github until you have a merge I think...) Do you think you could start from #139, or are you planning to start from scratch? |
- Add protection against uncommitted log growth of leader. This protection is done by estimate size of entry data rather than count of entry. So entry with no data will never be dropped - Add tests for raft and raw_node Signed-off-by: lyzongyuan <lyzongyuan@gmail.com>
Hi, i made a new PR working on this issue and code is ready for review. Glad to join the community :) @Hoverbear @siddontang |
- Add protection against uncommitted log growth of leader. This protection is done by estimate size of entry data rather than count of entry. So entry with no data will never be dropped - Add tests for raft and raw_node Signed-off-by: lyzongyuan <lyzongyuan@gmail.com>
- Add protection against uncommitted log growth of leader. This protection is done by estimate size of entry data rather than count of entry. So entry with no data will never be dropped - Add tests for raft and raw_node Signed-off-by: lyzongyuan <lyzongyuan@gmail.com>
Introduce a new, optional
max_uncommitted_entries
configuration. This config limits the max number of uncommitted entries that may be appended to a leader's log. Once this limit is exceeded, proposals will begin to returnProposalDropped
errors.You can refer to refer etcd-io/etcd#10167
This issue can be closed by:
Config
to have this new configuration setting.Raft::handle_append_entries
to check the limit. You can return the existingProposalDropped
error.tests/integration_cases/test_raft.rs
similar to the one in the etcd PR.As always, if you'd like to tackle this, or need any help, please feel free to reach out! We'd love to get you involved.
The text was updated successfully, but these errors were encountered: