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);
- }
- }
-}