Author: stack
Date: Sun Mar 8 07:13:34 2009
New Revision: 751380
URL: http://svn.apache.org/viewvc?rev=751380&view=rev
Log:
HBASE-1229 Apply HADOOP-5369 to HBase MapFile -- Latest version of Ben patch
Modified:
hadoop/hbase/branches/0.19/CHANGES.txt
hadoop/hbase/branches/0.19/src/java/org/apache/hadoop/hbase/io/MapFile.java
Modified: hadoop/hbase/branches/0.19/CHANGES.txt
URL:
http://svn.apache.org/viewvc/hadoop/hbase/branches/0.19/CHANGES.txt?rev=751380&r1=751379&r2=751380&view=diff
==============================================================================
--- hadoop/hbase/branches/0.19/CHANGES.txt (original)
+++ hadoop/hbase/branches/0.19/CHANGES.txt Sun Mar 8 07:13:34 2009
@@ -41,7 +41,7 @@
(Erik Holstad via Stack)
HBASE-1240 Would be nice if RowResult could be comparable
(Erik Holstad via Stack)
- HBASE-1229 Apply HADOOP-5369 to HBase MapFile (Ben Maurer via Stack)
+ HBASE-1229 Apply HADOOP-5369 to HBase MapFile (Ben Maurer via Stack)
Release 0.19.0
INCOMPATIBLE CHANGES
Modified:
hadoop/hbase/branches/0.19/src/java/org/apache/hadoop/hbase/io/MapFile.java
URL:
http://svn.apache.org/viewvc/hadoop/hbase/branches/0.19/src/java/org/apache/hadoop/hbase/io/MapFile.java?rev=751380&r1=751379&r2=751380&view=diff
==============================================================================
--- hadoop/hbase/branches/0.19/src/java/org/apache/hadoop/hbase/io/MapFile.java
(original)
+++ hadoop/hbase/branches/0.19/src/java/org/apache/hadoop/hbase/io/MapFile.java
Sun Mar 8 07:13:34 2009
@@ -388,19 +388,17 @@
data.seek(firstPosition);
}
- /** Get the key at approximately the middle of the file.
- *
- * @throws IOException
+ /** Get the key at approximately the middle of the file. Or null if the
+ * file is empty.
*/
public synchronized WritableComparable midKey() throws IOException {
readIndex();
- int pos = ((count - 1) / 2); // middle of the index
- if (pos < 0) {
- throw new IOException("MapFile empty");
+ if (count == 0) {
+ return null;
}
-
- return keys[pos];
+
+ return keys[(count - 1) / 2];
}
/** Reads the final key from the file.