Skip to content

[replication] box.info.synchro.queue gets a new field "owner" #2277

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

Closed
1 task
Tracked by #2802
TarantoolBot opened this issue Aug 6, 2021 · 0 comments · Fixed by #3140
Closed
1 task
Tracked by #2802

[replication] box.info.synchro.queue gets a new field "owner" #2277

TarantoolBot opened this issue Aug 6, 2021 · 0 comments · Fixed by #3140
Assignees
Labels
feature A new functionality reference [location] Tarantool manual, Reference part replication [area] Related to Replication server [area] Task relates to Tarantool's server (core) functionality

Comments

@TarantoolBot
Copy link
Collaborator

TarantoolBot commented Aug 6, 2021

Add the new field to box.info.synchro.queue

Product: Tarantool
Since: 2.10.0-beta1
Root document: https://www.tarantool.io/en/doc/latest/reference/reference_lua/box_info/
https://www.tarantool.io/en/doc/latest/book/replication/repl_sync/
SME: @ sergepetrenko
Peer reviewer: @
Estimate [@xuniq]: 3pt

Details

box.info.synchro.queue receives a new field: owner. It's a replica
id of the instance owning the synchronous transaction queue.

Once some instance owns the queue, every other instance becomes
read-only. When the queue is unclaimed, e.g.
box.info.synchro.queue.owner is 0, everyone may be writeable, but
cannot create synchronous transactions.

In order to claim or re-claim the queue, you have to issue
box.ctl.promote() on the instance you wish to promote.

When elections are enabled, the instance issues box.ctl.promote()
automatically once it wins the elections, no additional actions are
required.
Requested by @sergepetrenko in tarantool/tarantool@362e9a6.

Definition of done

Depends on and blocked by: #2044

There's a doc gap for box.info submodule documentation https://www.tarantool.io/en/doc/latest/reference/reference_lua/box_info/:
box.info.synchro is not described at all. First, it should be described in #2044 and then the new owner field description can be added there.

Connected to #2278

@art-dr art-dr added this to the Estimate [@arctic_dreamer] milestone Aug 25, 2021
@veod32 veod32 modified the milestones: Estimate [@arctic_dreamer], Estimate [@xuniq] Aug 27, 2021
@xuniq xuniq added reference [location] Tarantool manual, Reference part feature A new functionality server [area] Task relates to Tarantool's server (core) functionality labels Sep 1, 2021
@xuniq xuniq changed the title synchronous replication changes [3pt] Add the new field to box.info.synchro.queue Sep 1, 2021
@xuniq xuniq removed this from the Estimate [@xuniq] milestone Sep 1, 2021
@veod32 veod32 added the replication [area] Related to Replication label Feb 3, 2022
@xuniq xuniq changed the title [3pt] Add the new field to box.info.synchro.queue [replication] box.info.synchro.queue gets a new field "owner" Sep 14, 2022
@xuniq xuniq self-assigned this Sep 15, 2022
@xuniq xuniq closed this as completed in 73b6f2f Sep 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature A new functionality reference [location] Tarantool manual, Reference part replication [area] Related to Replication server [area] Task relates to Tarantool's server (core) functionality
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants