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

feat: implement new membership in curp #947

Draft
wants to merge 199 commits into
base: refactor-v0.7.0-new
Choose a base branch
from

Conversation

bsbds
Copy link
Collaborator

@bsbds bsbds commented Aug 14, 2024

Please briefly answer these questions:

  • what problem are you trying to solve? (or if there's no problem, what's the motivation for this change?)

  • what changes does this pull request make?

  • are there any non-obvious implications of these changes? (does it break compatibility with previous versions, etc)

dependabot bot and others added 25 commits July 29, 2024 01:54
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.23.3 to 1.23.5.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](crate-ci/typos@v1.23.3...v1.23.5)

---
updated-dependencies:
- dependency-name: crate-ci/typos
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: lxl66566 <[email protected]>
Signed-off-by: lxl66566 <[email protected]>

refactor(client): LeaseClient::revoke

Signed-off-by: lxl66566 <[email protected]>

refactor(client): LeaseClient::keep_alive

Signed-off-by: lxl66566 <[email protected]>

refactor(client): LeaseClient::time_to_live

Signed-off-by: lxl66566 <[email protected]>
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 2.0.14 to 2.0.15.
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md)
- [Commits](assert-rs/assert_cmd@v2.0.14...v2.0.15)

---
updated-dependencies:
- dependency-name: assert_cmd
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Make it competible with gRPC implementations that do not support the `optional` keyword

Signed-off-by: bsbds <[email protected]>
Signed-off-by: lxl66566 <[email protected]>

refactor(client): move WatchKeyOptions to range_end.rs, for reusing it to other Options

Signed-off-by: lxl66566 <[email protected]>

chore: move range_end to RangeEndOptions, add tests

Signed-off-by: lxl66566 <[email protected]>

fix: some rename and doc fix

Signed-off-by: lxl66566 <[email protected]>
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.23.5 to 1.23.6.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](crate-ci/typos@v1.23.5...v1.23.6)

---
updated-dependencies:
- dependency-name: crate-ci/typos
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: lxl66566 <[email protected]>

test mount and delete

Signed-off-by: lxl66566 <[email protected]>
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](uuid-rs/uuid@1.9.0...1.10.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: lxl66566 <[email protected]>

range

Signed-off-by: lxl66566 <[email protected]>
Upgrade axum to 0.7, tonic to 0.12, hyper to 1.0,
opentelemetry to 0.24, opentelemetry_sdk to 0.24.1,
opentelemetry_otlp to 0.17.

Signed-off-by: Yao Junwen <[email protected]>
@bsbds bsbds added this to the v0.8.0 milestone Aug 15, 2024
lxl66566 and others added 4 commits August 15, 2024 11:10
Signed-off-by: lxl66566 <[email protected]>

refactor(client)!: ClusterClient::member_remove

Signed-off-by: lxl66566 <[email protected]>

refactor(client)!: ClusterClient::member_promote

Signed-off-by: lxl66566 <[email protected]>

refactor(client)!: ClusterClient::member_update

Signed-off-by: lxl66566 <[email protected]>

refactor(client)!: ClusterClient::member_list

Signed-off-by: lxl66566 <[email protected]>

refactor(client)!: modify code in simulation

Signed-off-by: lxl66566 <[email protected]>

fix: ci fail

Signed-off-by: lxl66566 <[email protected]>
Bumps [syn](https://github.com/dtolnay/syn) from 2.0.63 to 2.0.65.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](dtolnay/syn@2.0.63...2.0.65)

---
updated-dependencies:
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: bsbds <[email protected]>

refactor: maintenance server learner status

Signed-off-by: bsbds <[email protected]>

refactor: fix lease_server leader addrs

Signed-off-by: bsbds <[email protected]>

refactor: fix lock server watch

Signed-off-by: bsbds <[email protected]>
Previously, Xline required a single address string in the membership config. This commit introduces a `NodeMetadata` type to store all node metadata, including:
- name: The node's name.
- peer_addrs: URLs for peer-to-peer communication.
- client_addrs: URLs for client communication.

Signed-off-by: bsbds <[email protected]>
- set `index_effective` to 0 to prevent truncation of effective
- set `committed` to the initial config

Signed-off-by: bsbds <[email protected]>
`CurpGroup` use Iterator::enumerate to generate node ids and this
requires consistent orders.

Signed-off-by: bsbds <[email protected]>
- remove member should not remove from nodes
- in `all_coherent`, `iter::successors` should skip the initial
  membership
Signed-off-by: bsbds <[email protected]>
- leader should update role to learner when removed
- a node should update it's leader id when the leader is removed

Signed-off-by: bsbds <[email protected]>
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.

4 participants