You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2009/09/16 04:43:43 UTC
svn commit: r815590 - in /hadoop/hbase/trunk: CHANGES.txt
src/java/org/apache/hadoop/hbase/io/hfile/HFile.java
Author: stack
Date: Wed Sep 16 02:43:43 2009
New Revision: 815590
URL: http://svn.apache.org/viewvc?rev=815590&view=rev
Log:
HBASE-1818 HFile code review and refinement
Modified:
hadoop/hbase/trunk/CHANGES.txt
hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/io/hfile/HFile.java
Modified: hadoop/hbase/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/CHANGES.txt?rev=815590&r1=815589&r2=815590&view=diff
==============================================================================
--- hadoop/hbase/trunk/CHANGES.txt (original)
+++ hadoop/hbase/trunk/CHANGES.txt Wed Sep 16 02:43:43 2009
@@ -26,6 +26,7 @@
timestamp provided
HBASE-1821 Filtering by SingleColumnValueFilter bug
HBASE-1840 RowLock fails when used with IndexTable (Keith Thomas via Stack)
+ HBASE-818 HFile code review and refinement (Schubert Zhang via Stack)
IMPROVEMENTS
HBASE-1760 Cleanup TODOs in HTable
Modified: hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/io/hfile/HFile.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/io/hfile/HFile.java?rev=815590&r1=815589&r2=815590&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/io/hfile/HFile.java (original)
+++ hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/io/hfile/HFile.java Wed Sep 16 02:43:43 2009
@@ -168,7 +168,7 @@
protected String name;
// Total uncompressed bytes, maybe calculate a compression ratio later.
- private int totalBytes = 0;
+ private long totalBytes = 0;
// Total # of key/value entries, ie: how many times add() was called.
private int entryCount = 0;
@@ -320,13 +320,12 @@
*/
private void finishBlock() throws IOException {
if (this.out == null) return;
- long size = releaseCompressingStream(this.out);
+ int size = releaseCompressingStream(this.out);
this.out = null;
blockKeys.add(firstKey);
- int written = longToInt(size);
blockOffsets.add(Long.valueOf(blockBegin));
- blockDataSizes.add(Integer.valueOf(written));
- this.totalBytes += written;
+ blockDataSizes.add(Integer.valueOf(size));
+ this.totalBytes += size;
}
/*
@@ -620,7 +619,7 @@
appendFileInfo(this.fileinfo, FileInfo.AVG_KEY_LEN,
Bytes.toBytes(avgKeyLen), false);
int avgValueLen = this.entryCount == 0? 0:
- (int)(this.keylength/this.entryCount);
+ (int)(this.valuelength/this.entryCount);
appendFileInfo(this.fileinfo, FileInfo.AVG_VALUE_LEN,
Bytes.toBytes(avgValueLen), false);
appendFileInfo(this.fileinfo, FileInfo.COMPARATOR,
@@ -898,7 +897,7 @@
if (blockIndex == null) {
throw new IOException("Block index not loaded");
}
- if (block < 0 || block > blockIndex.count) {
+ if (block < 0 || block >= blockIndex.count) {
throw new IOException("Requested block is out of range: " + block +
", max: " + blockIndex.count);
}
@@ -1251,6 +1250,7 @@
block.rewind();
currKeyLen = block.getInt();
currValueLen = block.getInt();
+ return true;
}
currBlock = 0;
block = reader.readBlock(currBlock, cacheBlocks);