That makes sense but which node roles (master vs. data) is this setting actually relevant?
Assuming you had:
-10 data nodes (not eligible for the master role)
-3 master nodes (not eligible for the data role)
Would same_shard.host be required on the data nodes? master nodes? both?
I've yet to find the time to dig into the ES source to understand shard allocations in detail.
- Do the masters read the state of the cluster and make all shard allocation decisions internally?
-In this scenario, same_shard.host seems like it would be only relevant on the master where the decisions are being made
or - Do the masters ask the individual data nodes to make the allocation decisions?
-In this scenario, the same_shard.host could be relevant on the data nodes or master nodes (depending on implementation)
My assumption would be #1 - but I didn't build ES so I need to ask.
Doing a quick google search for this setting suggests the ES file below is where this setting is consumed. Perhaps a more direct question would be - Does the master or data role use this class/code?
/src/main/java/org/elasticsearch/cluster/routing/allocation/decider/SameShardAllocationDecider.java