Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.1.1-beta
-
None
-
Reviewed
Description
addBlock() call retry should return the LocatedBlock with locations if the block was created in previous call and failover/restart of namenode happened.
otherwise client will get ArrayIndexOutOfBoundsException while creating the block and write will fail.
java.lang.ArrayIndexOutOfBoundsException: 0 at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.createBlockOutputStream(DFSOutputStream.java:1118) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.nextBlockOutputStream(DFSOutputStream.java:1078) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:511)