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-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org