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

fix: immediately unset a core node for all shards, when that core node is down #155

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

SergeTupchiy
Copy link
Contributor

This fix should reduce the risk of delegating a write operation (RPC) to a down core node.

Relates to: EMQX-10703, emqx#11310

@SergeTupchiy
Copy link
Contributor Author

NOTE: please don't merge it, as it doesn't look absolutely worthwhile. The mentioned issues will be fixed in EMQX.
The main goal of this PR is to attract attention to the fact that RPC to core node may fail because the core node is not ready/down even though a nodedown monitor message has been already received/processed by mria_membership, but mria_lbhas not updated core nodes because it is doing it only periodically (not event driven).

src/mria_lb.erl Outdated Show resolved Hide resolved
@SergeTupchiy SergeTupchiy force-pushed the EMQX-10703-unset-failed-core-node-immediately branch 2 times, most recently from 8cd99c7 to d9e2f68 Compare August 3, 2023 17:51
@zmstone
Copy link
Member

zmstone commented Aug 4, 2023

lgtm

…e is down

This fix should reduce the risk of delegating a write operation (RPC) to a down core node.

Relates to: EMQX-10703, emqx#11310
@SergeTupchiy SergeTupchiy force-pushed the EMQX-10703-unset-failed-core-node-immediately branch from d9e2f68 to cea3dfe Compare August 4, 2023 09:46
@SergeTupchiy SergeTupchiy marked this pull request as ready for review August 4, 2023 12:01
@SergeTupchiy SergeTupchiy marked this pull request as draft August 4, 2023 12:02
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.

2 participants