Stephen O'Donnell created HDDS-10681:
----------------------------------------
Summary: EC Reconstruction does not issue put block to data index
if it is unused
Key: HDDS-10681
URL: https://issues.apache.org/jira/browse/HDDS-10681
Project: Apache Ozone
Issue Type: Bug
Reporter: Stephen O'Donnell
Assignee: Stephen O'Donnell
Given a small EC block:
* <= 2MB for EC-3-2
* <= 5MB for EC-6-3
* <= 9MB for EC-10-4
So that it is less than a full stripe and does not use all the datanodes.
When reconstruction happens to replace a replica which is not used in the
stripe, the unused containers are not issued with the put block to store the
details of the empty block within the container. Note that the container
replica will likely have other blocks, so it will still get reconstructed, but
it will not be given a reference to this empty block.
All containers are checked for the presence of all blocks during
reconstruction. If any of the containers do not have a reference to the block,
it is considered an orphan block / abandoned stripe and will not be
reconstructed.
Therefore if one replica has no entry for the block, then it is used it another
reconstruction for another replica later, that block will not get reconstructed
into a second replica. Over time this can result in the reference getting
removed from all copies.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]