hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pete Wyckoff (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-4616) assertion makes fuse-dfs exit when reading incomplete data
Date Wed, 12 Nov 2008 00:31:44 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-4616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12646752#action_12646752
] 

Pete Wyckoff commented on HADOOP-4616:
--------------------------------------

Dhruba and I looked at this more and did reproduce the test of 1) all blocks going missing
for a file and 2) a block being corrupt for a file (i edited the block) and all seems ok here
but could not hit the condition of getting a non error code back from dfs but reading 0 bytes.
But I can see how it is possible.

Note that this error does not happen for 0 size files normally as some higher level mechanism
is returning EOF rather than fuse-dfs itself.  Otherwise, this assertion would be failing
all the time for 0 sized files.

-- pete


> assertion makes fuse-dfs exit when reading incomplete data
> ----------------------------------------------------------
>
>                 Key: HADOOP-4616
>                 URL: https://issues.apache.org/jira/browse/HADOOP-4616
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: contrib/fuse-dfs
>    Affects Versions: 0.18.2
>            Reporter: Marc-Olivier Fleury
>            Assignee: Pete Wyckoff
>            Priority: Minor
>             Fix For: 0.18.3, 0.19.1, 0.20.0
>
>         Attachments: HADOOP-4616.txt, HADOOP-4616.txt, HADOOP-4616.txt, HADOOP-4616_0.18.2.txt,
HADOOP-4616_0.18.2.txt, HADOOP-4616_0.19.txt
>
>
> When trying to read a file that is corrupt on HDFS (registered by the namenode, but part
of the data is missing on the datanodes), some of the assertions in dfs_read fail, causing
the program to abort. This makes it  impossible to access the mounted partition until it is
mounted again.
> A simple way to reproduce this bug is to remove enough datanodes to have part of the
data missing, and to read each file listed in HDFS.
> this is the assertion that fails (fuse_dfs.c:903) : assert(bufferReadIndex >= 0 &&
bufferReadIndex < fh->bufferSize);
> The expected behaviour would be to return either no file or a corrupt file, but continue
working afterward.
> removing the assertion seems to work for now, but a special behaviour is probably needed
to handle this particular problem correctly.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message