Description
SUBJ.
The plan is to reimplement janitor and rebalancer interaction with remote nodes. Making those interactions index-aware (so that capi_set_view_manager doesn't have to infer anything, but gets clear instructions).
Core of this approach is new per bucket per node janitor_agent service. janitor and rebalancer do not interact directly with ns_memcached or replication supervisors. They're talking to janitor_agent in order to:
*) properly serialize interaction avoid some class of bugs (janitor tried to do something, timedout, then it reads potentially changing state)
*) allow janitor_agent to deal with index configuration changes. It'll do vbucket state changes in concert with index config updates
*) have much clearer and cleaner and future-compatible inter-node API so that future backwards-compatibility is easier
See commit message for more details.
Attachments
For Gerrit Dashboard: MB-5968 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
18637,9 | MB-5968: re-impl. vbucket states & replications orchestration | master | ns_server | Status: MERGED | +2 | +1 |