Skip to content

Don't cancel allocation when a new sync id is found on shared filesystems #16357

@dakrone

Description

@dakrone

In ReplicaShardAllocator.processExistingRecoveries, if we find a "better" match, we cancel allocation of a replica:

// we found a better match that has a full sync id match, the existing allocation is not fully synced
// so we found a better one, cancel this one
it.moveToUnassigned(new UnassignedInfo(UnassignedInfo.Reason.REALLOCATED_REPLICA,
        "existing allocation of replica to [" + currentNode + "] cancelled, sync id match found on node [" + nodeWithHighestMatch + "]"));

However, when on a shared filesystem, all data nodes have the same data, so we should not cancel allocation if a new node pops up.

Metadata

Metadata

Assignees

Labels

:Distributed/AllocationAll issues relating to the decision making around placing a shard (both master logic & on the nodes)>enhancement

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions