Description
The problem we saw was that unloading of an only replica of a shard deleted that shard's info from the clusterstate. Once it was gone then there was no easy way to re-create the shard (other than dropping and re-creating the whole collection's state).
This seems like a bug?
Overseer.java around line 600 has a comment and commented out code:
// TODO TODO TODO!!! if there are no replicas left for the slice, and the slice has no hash range, remove it
// if (newReplicas.size() == 0 && slice.getRange() == null) {
// if there are no replicas left for the slice remove it