canonical / canonical/microcluster

Prejoin hook does not fail cleanly.

Open
#784 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
33
Forks
39
Avg merge
4h 49m
Merged PRs (30d)
6

Description

If you error within the PreJoin hook in microcluster and then try to rejoin you get this:
```
Membership consistency check failed after timeout: Microcluster node membership is inconsistent across core_cluster_members ([10.33.87.13:6686 10.33.87.53:6686]), truststore ([10.33.87.13:6686 10.33.87.199:6686 10.33.87.53:6686]) and dqlite ([10.33.87.13:6686 10.33.87.53:6686])
```

This is affecting some new https://github.com/canonical/microovn functionality. It is not urgent but a fix would be nice.

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the failure by returning an error from the PreJoin hook in microcluster and then attempting to rejoin. Trace the membership consistency check across core_cluster_members, truststore, and dqlite; done means the failed prejoin leaves membership consistent and the subsequent rejoin reports a clean error.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.