You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "daimin (Jira)" <ji...@apache.org> on 2021/10/13 07:44:00 UTC
[jira] [Created] (HDFS-16272) Int overflow in computing safe length
during EC block recovery
daimin created HDFS-16272:
-----------------------------
Summary: Int overflow in computing safe length during EC block recovery
Key: HDFS-16272
URL: https://issues.apache.org/jira/browse/HDFS-16272
Project: Hadoop HDFS
Issue Type: Bug
Components: 3.1.1
Affects Versions: 3.3.1, 3.3.0
Environment: Cluster settings: EC RS-8-2-256k, Block Size 1GiB.
Reporter: daimin
There exists an int overflow problem in StripedBlockUtil#getSafeLength, which will produce a negative or zero length:
1. With negative length, it fails to the later >=0 check, and will crash the BlockRecoveryWorker thread, which make the lease recovery operation unable to finish.
2. With zero length, it passes the check, and directly truncate the block size to zero, leads to data lossing.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-help@hadoop.apache.org