[ https://issues.apache.org/jira/browse/HDFS-877?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Todd Lipcon updated HDFS-877: ----------------------------- Attachment: hdfs-877.txt It actually seems like HDFS-734 is different. For me, TestDatanodeBlockScanner is passing on a fresh branch-0.20 checkout now that HDFS-127 has been reverted. Can you confirm? If so, we can mark that one as fixed. However, I backported the new unit test from this JIRA, and discovered that the gotEOSBefore bug is present in branch-0.20. However, this bug doesn't really cause a problem, since it only occurs when doing unaligned reads. If your read is unaligned, then reporting CHECKSUM_OK is a no-op anyway, and it doesn't really matter. Agree? Attaching new patch against trunk with fixed whitespace and logging. > Client-driven block verification not functioning > ------------------------------------------------ > > Key: HDFS-877 > URL: https://issues.apache.org/jira/browse/HDFS-877 > Project: Hadoop HDFS > Issue Type: Bug > Components: hdfs client, test > Affects Versions: 0.20.1, 0.21.0, 0.22.0 > Reporter: Todd Lipcon > Assignee: Todd Lipcon > Priority: Blocker > Attachments: hdfs-877.txt, hdfs-877.txt, hdfs-877.txt, hdfs-877.txt, > hdfs-877.txt > > > This is actually the reason for HDFS-734 (TestDatanodeBlockScanner timing > out). The issue is that DFSInputStream relies on readChunk being called one > last time at the end of the file in order to receive the > lastPacketInBlock=true packet from the DN. However, DFSInputStream.read > checks pos < getFileLength() before issuing the read. Thus gotEOS never > shifts to true and checksumOk() is never called. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.