Hadoop HDFS
  1. Hadoop HDFS
  2. HDFS-1483

DFSClient.getBlockLocations returns BlockLocations with no indication that the corresponding blocks are corrupt

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.22.0
    • Component/s: hdfs-client
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      When there are no uncorrupted replicas of a block, FSNamesystem.getBlockLocations returns LocatedBlocks corresponding to corrupt blocks. When DFSClient converts these to BlockLocations, the information that the corresponding block is corrupt is lost. We should add a field to BlockLocation to indicate whether the corresponding block is corrupt in order to warn the client that reading this block will fail. This would be especially useful for tools such as RAID FSCK, which could then easily inspect whether data or parity blocks are corrupted without having to make direct RPC calls.

      1. HDFS-1483.2.patch
        3 kB
        Patrick Kling
      2. HDFS-1483.patch
        4 kB
        Patrick Kling

        Issue Links

          Activity

          Hide
          Hairong Kuang added a comment -

          I've just committed this. Thanks Patrick!

          Show
          Hairong Kuang added a comment - I've just committed this. Thanks Patrick!
          Hide
          Patrick Kling added a comment -

          [exec] -1 overall.
          [exec]
          [exec] +1 @author. The patch does not contain any @author tags.
          [exec]
          [exec] +1 tests included. The patch appears to include 3 new or modified tests.
          [exec]
          [exec] +1 javadoc. The javadoc tool did not generate any warning messages.
          [exec]
          [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings.
          [exec]
          [exec] -1 findbugs. The patch appears to introduce 3 new Findbugs warnings.
          [exec]
          [exec] -1 release audit. The applied patch generated 97 release audit warnings (more than the trunk's current 1 warnings).
          [exec]
          [exec] +1 system test framework. The patch passed system test framework compile.

          The findbugs/release audit warnings are not caused by this patch (see MAPREDUCE-2172).

          Show
          Patrick Kling added a comment - [exec] -1 overall. [exec] [exec] +1 @author. The patch does not contain any @author tags. [exec] [exec] +1 tests included. The patch appears to include 3 new or modified tests. [exec] [exec] +1 javadoc. The javadoc tool did not generate any warning messages. [exec] [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings. [exec] [exec] -1 findbugs. The patch appears to introduce 3 new Findbugs warnings. [exec] [exec] -1 release audit. The applied patch generated 97 release audit warnings (more than the trunk's current 1 warnings). [exec] [exec] +1 system test framework. The patch passed system test framework compile. The findbugs/release audit warnings are not caused by this patch (see MAPREDUCE-2172 ).
          Hide
          Hairong Kuang added a comment -

          +1. This looks good to me.

          Show
          Hairong Kuang added a comment - +1. This looks good to me.
          Hide
          Patrick Kling added a comment -
          Show
          Patrick Kling added a comment - Review board: https://reviews.apache.org/r/27/

            People

            • Assignee:
              Patrick Kling
              Reporter:
              Patrick Kling
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development