m3db / m3

M3 monorepo - Distributed TSDB, Aggregator and Query Engine, Prometheus Sidecar, Graphite Compatible, Metrics Platform

Home Page:https://m3db.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support adding multiple instances at a time to a sharded placement

jeromefroe opened this issue · comments

Currently, nonMirroredSelector, which is used by the placement server's Add handler, via shardedPlacementAlgorithm, will only add a single instance at a time unless the AddAllCandidates option is enabled. However, there is no way to enable this option via the Add handler, so it will only ever add a single instance at a time. This can result in unnecessary data shuffling when expanding an M3DB cluster since the cluster cannot go from its current placement to it's final placement with multiple new nodes directly. It would be faster and more efficient when using the Add handler to expand an M3DB cluster if the handler could all new instances at once.