Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
0.21.0
-
None
-
None
Description
BlockSender waits until all bytes of a replica are flushed to disk. Currently it compares the replica bytes on disk with the replica visible length. In order to make sure that all bytes are flushed it should compare the bytes on disk with the block length, because visible length may be smaller than the block length.
It would be useful also to create a special method FSDataset.getBytesOnDisk(blockID), which gets this information through the volume map. Otherwise we may access replicas, which are not in the map anymore.