Daryn Sharp created HDFS-8498:
---------------------------------
Summary: Blocks can be committed with wrong size
Key: HDFS-8498
URL: https://issues.apache.org/jira/browse/HDFS-8498
Project: Hadoop HDFS
Issue Type: Bug
Components: namenode
Affects Versions: 2.5.0
Reporter: Daryn Sharp
Assignee: Daryn Sharp
Priority: Critical
When an IBR for a UC block arrives, the NN updates the expected location's
block and replica state _only_ if it's on an unexpected storage for an expected
DN. If it's for an expected storage, only the genstamp is updated. When the
block is committed, and the expected locations are verified, only the genstamp
is checked. The size is not checked but it wasn't updated in the expected
locations anyway.
A faulty client may misreport the size when committing the block. The block is
effectively corrupted. If the NN issues replications, the received IBR is
considered corrupt, the NN invalidates the block, immediately issues another
replication. The NN eventually realizes all the original replicas are corrupt
after full BRs are received from the original DNs.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)