Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
0.16.0
-
None
-
None
Description
When datanode is transfering data to other datanodes (as opposed to a client write()), DN currently receiving the data is supposed to continued to receive even if the downstream (mirror) datanode fails.
I think there are two minor bugs in receiveBlock() :
- mirrorSock masks this.mirrorSock, which could be set to null by other members like receiveChunk() to indicate failure.
- when this.mirrorSock is non null, failure to write to it at in receiveBlock() should be handled same way as in receiveChunk().
I am not sure if this should block 0.16.1, but should surely block 0.16.2.