diff --git a/cluster.go b/cluster.go index 5c5c0e7f1..9ee35f4fa 100644 --- a/cluster.go +++ b/cluster.go @@ -851,6 +851,8 @@ func (c *cluster) shardNodes(index string, shard uint64) []*Node { // ownsShard returns true if a host owns a fragment. func (c *cluster) ownsShard(nodeID string, index string, shard uint64) bool { + c.mu.RLock() + defer c.mu.RUnlock() return Nodes(c.shardNodes(index, shard)).ContainsID(nodeID) }