BlockSender sets a wrong position in ChecksumException that indicates the offset where crc mismatch occurs.
Integrated in Hadoop-Hdfs-trunk #65 (See http://hudson.zones.apache.org/hudson/job/Hadoop-Hdfs-trunk/65/)
I propose that we backport this to 0.20? This is a very simple and row risk fix and helps applications that depend on the correct offset being recorded inside Checksumexception. If folks agree, then I will pull this into 0.20 as well.
I've just committed this.
The patch passed all unit tests.
It's too trivial to add a unit test.
A patch for review.