You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by la...@apache.org on 2016/11/01 19:48:15 UTC
[37/50] hbase git commit: HBASE-16694 Reduce garbage for
onDiskChecksum in HFileBlock (binlijin)
HBASE-16694 Reduce garbage for onDiskChecksum in HFileBlock (binlijin)
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/6903296a
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/6903296a
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/6903296a
Branch: refs/heads/0.98
Commit: 6903296a3c181958eda82d0e2cbe24aba986efda
Parents: 1bdf05b
Author: Andrew Purtell <ap...@apache.org>
Authored: Mon Sep 26 13:49:10 2016 -0700
Committer: Andrew Purtell <ap...@apache.org>
Committed: Mon Sep 26 13:55:26 2016 -0700
----------------------------------------------------------------------
.../main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/6903296a/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 46e2ba1..546e1c6 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
@@ -773,7 +773,7 @@ public class HFileBlock implements Cacheable {
* part of onDiskBytesWithHeader. If data is uncompressed, then this
* variable stores the checksum data for this block.
*/
- private byte[] onDiskChecksum;
+ private byte[] onDiskChecksum = HConstants.EMPTY_BYTE_ARRAY;
/**
* Valid in the READY state. Contains the header and the uncompressed (but
@@ -918,7 +918,9 @@ public class HFileBlock implements Cacheable {
onDiskBytesWithHeader.length + numBytes,
uncompressedBytesWithHeader.length, onDiskBytesWithHeader.length);
- onDiskChecksum = new byte[numBytes];
+ if (onDiskChecksum.length != numBytes) {
+ onDiskChecksum = new byte[numBytes];
+ }
ChecksumUtil.generateChecksums(
onDiskBytesWithHeader, 0, onDiskBytesWithHeader.length,
onDiskChecksum, 0, fileContext.getChecksumType(), fileContext.getBytesPerChecksum());