Just a tracking issue since we (Wavefront) have something pretty close in the 3.x branch. The idea is to have memory storage nodes abort recovery if the cluster is healthy (and just join as an empty node). It would also abort recovery (if in-flight) should the cluster turn healthy. Most of the time, they spend N minutes (roughly one minute per G of storage_memory) reading from disk for a healthy cluster only to just discard their data.
Just a tracking issue since we (Wavefront) have something pretty close in the 3.x branch. The idea is to have memory storage nodes abort recovery if the cluster is healthy (and just join as an empty node). It would also abort recovery (if in-flight) should the cluster turn healthy. Most of the time, they spend N minutes (roughly one minute per G of storage_memory) reading from disk for a healthy cluster only to just discard their data.