From: Cyrill Gorcunov <gorcunov@gmail.com> To: tml <tarantool-patches@dev.tarantool.org> Cc: Vladislav Shpilevoy <v.shpilevoy@tarantool.org> Subject: [Tarantool-patches] [PATCH v2] raft: make sure the voting mask is wide enough Date: Wed, 28 Oct 2020 21:56:50 +0300 [thread overview] Message-ID: <20201028185650.GA198833@grain> (raw) In-Reply-To: <20201028181352.260915-1-gorcunov@gmail.com> The vote_mask is declared as uint32_t which is highly coupled with VCLOCK_MAX, lets add a compile time test to be sure. Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com> --- I didn't make any branch here since it is trivial, fetch it from the mbox please if decide to apply. In v2 I fixed a few grammar typos. src/box/raft.c | 6 ++++++ 1 file changed, 6 insertions(+) Index: tarantool.git/src/box/raft.c =================================================================== --- tarantool.git.orig/src/box/raft.c +++ tarantool.git/src/box/raft.c @@ -1061,4 +1061,10 @@ raft_init(void) { ev_timer_init(&raft.timer, raft_sm_schedule_new_election_cb, 0, 0); rlist_create(&raft.on_update); + + /* + * Make sure there are enough bits to track all replicas. + */ + static_assert(sizeof(raft.vote_mask) * 8 >= VCLOCK_MAX, + "RAFT: vote_mask is too short"); }
next prev parent reply other threads:[~2020-10-28 18:56 UTC|newest] Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-10-28 18:13 [Tarantool-patches] raft: make sure the voking " Cyrill Gorcunov 2020-10-28 18:56 ` Cyrill Gorcunov [this message] 2020-10-30 7:33 ` [Tarantool-patches] [PATCH v2] raft: make sure the voting " Serge Petrenko 2020-10-30 8:30 ` [Tarantool-patches] [PATCH v3] raft: make sure the voking " Cyrill Gorcunov 2020-10-30 8:39 ` Serge Petrenko 2020-11-02 22:04 ` [Tarantool-patches] " Vladislav Shpilevoy 2020-11-02 22:17 ` Cyrill Gorcunov 2020-11-02 22:28 ` Vladislav Shpilevoy
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20201028185650.GA198833@grain \ --to=gorcunov@gmail.com \ --cc=tarantool-patches@dev.tarantool.org \ --cc=v.shpilevoy@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH v2] raft: make sure the voting mask is wide enough' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox