[ 
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-branch20.txt

Here's a patch for branch-20 that shows that checksum verification works after 
fixing the gotEOSBefore bug. It does pull in mockito and junit 4 (which should 
be entirely compatible). I don't think it's pressing to commit it if there's 
any concern, but the tests might be nice to have to make sure that no other 
patches break this behavior on the branch.

> 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-branch20.txt, 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.

Reply via email to