Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
In ECBlockInputStream, it is possible to have multiple locations for a single replicaIndex, if, say one replica is decommissioned but still online and there is also an IN_SERVICE replica.
Similar for Maintenance - there can be maintenance and in_service replicas, or just over replicated replicas.
As things stand, if a read to an index fails, it causes a failover to reconstruction read, but there are occassions where it would be possible to read from the spare replica and no need to fall back to reconstruction.
This PR allows spare replicas to be tried before giving up with an error.
Attachments
Issue Links
- is required by
-
HDDS-7909 When DN is offline Read of EC data is failing [Failed to execute command GetBlock on the Pipeline]
- Open
- links to