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

refactor(meta/management): non blocking join #8410

Merged
merged 1 commit into from
Oct 24, 2022

Conversation

drmingdrmer
Copy link
Member

I hereby agree to the terms of the CLA available at: https://databend.rs/dev/policies/cla/

Summary

refactor(meta/management): non blocking join
  • Upgrade openraft v0.7.4-alpha.2..v0.7.4-alpha.3:
    Change-membership does not return error when replication lags.

    If blocking is true, Raft::change_membership(..., blocking) will
    block until repliication to new nodes become upto date.
    But it won't return an error when proposing change-membership log.

  • Join a node to cluster in non-blocking mode: the leader does not wait
    replication to the new node to become up to date. In case there are a
    logs to sync.

  • MetaNode::get_leader() should have a max timeout. Otherwise it may
    block for ever.

  • Fix: Joining should be non-blocking #8386

Changelog

Related Issues

- Upgrade openraft v0.7.4-alpha.2..v0.7.4-alpha.3:
  Change-membership does not return error when replication lags.

  If `blocking` is `true`, `Raft::change_membership(..., blocking)` will
  block until repliication to new nodes become upto date.
  But it won't return an error when proposing change-membership log.

- Join a node to cluster in non-blocking mode: the leader does not wait
  replication to the new node to become up to date. In case there are a
  logs to sync.

- `MetaNode::get_leader()` should have a max timeout. Otherwise it may
  block for ever.

- Fix: databendlabs#8386
@vercel
Copy link

vercel bot commented Oct 23, 2022

The latest updates on your projects. Learn more about Vercel for Git ↗︎

1 Ignored Deployment
Name Status Preview Updated
databend ⬜️ Ignored (Inspect) Oct 23, 2022 at 3:27PM (UTC)

@drmingdrmer drmingdrmer marked this pull request as ready for review October 23, 2022 15:28
@mergify mergify bot added the pr-refactor this PR changes the code base without new features or bugfix label Oct 23, 2022
@drmingdrmer drmingdrmer merged commit 6047ceb into databendlabs:main Oct 24, 2022
@drmingdrmer drmingdrmer deleted the 50-raft branch October 24, 2022 00:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr-refactor this PR changes the code base without new features or bugfix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Joining should be non-blocking
1 participant