You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by sy...@apache.org on 2017/03/20 17:41:35 UTC

[02/28] hbase git commit: Revert "guard against NPE while reading FileTrailer and HFileBlock"

Revert "guard against NPE while reading FileTrailer and HFileBlock"

This reverts commit 201c8382508da1266d11e04d3c7cbef42e0a256a.

Reverted because missing JIRA number. Fixing...


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9a4068dc
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9a4068dc
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9a4068dc

Branch: refs/heads/hbase-12439
Commit: 9a4068dcf8caec644e6703ffa365a8649bbd336e
Parents: edbd0e4
Author: Michael Stack <st...@apache.org>
Authored: Thu Mar 16 14:53:25 2017 -0700
Committer: Michael Stack <st...@apache.org>
Committed: Thu Mar 16 14:53:25 2017 -0700

----------------------------------------------------------------------
 .../hadoop/hbase/io/hfile/FixedFileTrailer.java |  3 +-
 .../hadoop/hbase/io/hfile/HFileBlock.java       |  2 +-
 .../apache/hadoop/hbase/io/hfile/HFileUtil.java | 43 --------------------
 3 files changed, 2 insertions(+), 46 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/9a4068dc/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/FixedFileTrailer.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/FixedFileTrailer.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/FixedFileTrailer.java
index 1854236..7eac9c6 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/FixedFileTrailer.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/FixedFileTrailer.java
@@ -388,8 +388,7 @@ public class FixedFileTrailer {
       bufferSize = (int) fileSize;
     }
 
-    HFileUtil.seekOnMultipleSources(istream, seekPoint);
-
+    istream.seek(seekPoint);
     ByteBuffer buf = ByteBuffer.allocate(bufferSize);
     istream.readFully(buf.array(), buf.arrayOffset(),
         buf.arrayOffset() + buf.limit());

http://git-wip-us.apache.org/repos/asf/hbase/blob/9a4068dc/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
index 0b140b6..fba15ba 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
@@ -1512,7 +1512,7 @@ public class HFileBlock implements Cacheable {
       if (!pread && streamLock.tryLock()) {
         // Seek + read. Better for scanning.
         try {
-          HFileUtil.seekOnMultipleSources(istream, fileOffset);
+          istream.seek(fileOffset);
 
           long realOffset = istream.getPos();
           if (realOffset != fileOffset) {

http://git-wip-us.apache.org/repos/asf/hbase/blob/9a4068dc/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileUtil.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileUtil.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileUtil.java
deleted file mode 100644
index 835450c..0000000
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileUtil.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.hadoop.hbase.io.hfile;
-
-import java.io.IOException;
-
-import org.apache.hadoop.fs.FSDataInputStream;
-
-public class HFileUtil {
-
-  /** guards against NullPointer
-   * utility which tries to seek on the DFSIS and will try an alternative source
-   * if the FSDataInputStream throws an NPE HBASE-17501
-   * @param istream
-   * @param offset
-   * @throws IOException
-   */
-  static public void seekOnMultipleSources(FSDataInputStream istream, long offset) throws IOException {
-    try {
-      // attempt to seek inside of current blockReader
-      istream.seek(offset);
-    } catch (NullPointerException e) {
-      // retry the seek on an alternate copy of the data
-      // this can occur if the blockReader on the DFSInputStream is null
-      istream.seekToNewSource(offset);
-    }
-  }
-}