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 2012/08/21 19:05:17 UTC
svn commit: r1375663 - in /hbase/trunk:
hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValue.java
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderV2.java
Author: larsh
Date: Tue Aug 21 17:05:17 2012
New Revision: 1375663
URL: http://svn.apache.org/viewvc?rev=1375663&view=rev
Log:
HBASE-6621 Reduce calls to Bytes.toInt
Modified:
hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValue.java
hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderV2.java
Modified: hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValue.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValue.java?rev=1375663&r1=1375662&r2=1375663&view=diff
==============================================================================
--- hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValue.java (original)
+++ hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValue.java Tue Aug 21 17:05:17 2012
@@ -316,6 +316,21 @@ public class KeyValue implements Writabl
this.length = length;
}
+ /**
+ * Creates a KeyValue from the specified byte array, starting at offset,
+ * for length <code>length</code>, and a known <code>keyLength</code>.
+ * @param bytes byte array
+ * @param offset offset to start of the KeyValue
+ * @param length length of the KeyValue
+ * @param keyLength length of the key portion of the KeyValue
+ */
+ public KeyValue(final byte [] bytes, final int offset, final int length, final int keyLength) {
+ this.bytes = bytes;
+ this.offset = offset;
+ this.length = length;
+ this.keyLength = keyLength;
+ }
+
/** Constructors that build a new backing byte array from fields */
/**
Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderV2.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderV2.java?rev=1375663&r1=1375662&r2=1375663&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderV2.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderV2.java Tue Aug 21 17:05:17 2012
@@ -606,7 +606,9 @@ public class HFileReaderV2 extends Abstr
return null;
KeyValue ret = new KeyValue(blockBuffer.array(),
- blockBuffer.arrayOffset() + blockBuffer.position());
+ blockBuffer.arrayOffset() + blockBuffer.position(),
+ KEY_VALUE_LEN_SIZE + currKeyLen + currValueLen,
+ currKeyLen);
if (this.reader.shouldIncludeMemstoreTS()) {
ret.setMemstoreTS(currMemstoreTS);
}