You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2009/12/21 09:09:06 UTC
svn commit: r892720 - in /hadoop/hbase/branches/0.20_on_hadoop-0.18.3: ./
bin/ src/java/org/apache/hadoop/hbase/
src/java/org/apache/hadoop/hbase/client/
src/java/org/apache/hadoop/hbase/regionserver/
src/java/org/apache/hadoop/hbase/zookeeper/
Author: apurtell
Date: Mon Dec 21 08:09:05 2009
New Revision: 892720
URL: http://svn.apache.org/viewvc?rev=892720&view=rev
Log:
pull up to latest 0.20 branch
Modified:
hadoop/hbase/branches/0.20_on_hadoop-0.18.3/CHANGES.txt
hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/HBase.rb
hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/hirb.rb
hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/HTableDescriptor.java
hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/client/UnmodifyableHTableDescriptor.java
hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java
hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperWrapper.java
Modified: hadoop/hbase/branches/0.20_on_hadoop-0.18.3/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20_on_hadoop-0.18.3/CHANGES.txt?rev=892720&r1=892719&r2=892720&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20_on_hadoop-0.18.3/CHANGES.txt (original)
+++ hadoop/hbase/branches/0.20_on_hadoop-0.18.3/CHANGES.txt Mon Dec 21 08:09:05 2009
@@ -22,6 +22,8 @@
(Benoit Sigoure via JD)
HBASE-1960 Master should wait for DFS to come up when creating
hbase.version
+ HBASE-2054 memstore size 0 is >= than blocking -2.0g size
+ HBASE-2057 Cluster won't stop
IMPROVEMENTS
HBASE-1961 HBase EC2 scripts
@@ -46,6 +48,10 @@
HBASE-2052 Make hbase more 'live' when comes to noticing table creation,
splits, etc., for 0.20.3
HBASE-2049 Cleanup HLog binary log output (Dave Latham via Stack)
+ HBASE-2060 Missing closing tag in mapreduce package info (Lars George via
+ Andrew Purtell)
+ HBASE-2028 Add HTable.incrementColumnValue support to shell (Lars George
+ via Andrew Purtell)
Release 0.20.2 - November 18th, 2009
INCOMPATIBLE CHANGES
Modified: hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/HBase.rb
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/HBase.rb?rev=892720&r1=892719&r2=892720&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/HBase.rb (original)
+++ hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/HBase.rb Mon Dec 21 08:09:05 2009
@@ -462,6 +462,22 @@
@formatter.footer(now)
end
+ def incr(row, column, value = nil)
+ now = Time.now
+ split = KeyValue.parseColumn(column.to_java_bytes)
+ family = split[0]
+ qualifier = nil
+ if split.length > 1
+ qualifier = split[1]
+ end
+ if value == nil
+ value = 1
+ end
+ @table.incrementColumnValue(row.to_java_bytes, family, qualifier, value)
+ @formatter.header()
+ @formatter.footer(now)
+ end
+
def isMetaTable()
tn = @table.getTableName()
return Bytes.equals(tn, HConstants::META_TABLE_NAME) ||
@@ -619,6 +635,12 @@
if formatter.rowCount() != 3
raise IOError.new("Failed endrow test")
end
+ # Verify that incr works
+ table.incr('incr1', 'c:1');
+ table.scan({COLUMNS => ['c:1']})
+ if formatter.rowCount() != 1
+ raise IOError.new("Failed incr test")
+ end
# Verify that delete works
table.delete('x1', 'x:1');
table.scan(['x:1'])
Modified: hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/hirb.rb
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/hirb.rb?rev=892720&r1=892719&r2=892720&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/hirb.rb (original)
+++ hadoop/hbase/branches/0.20_on_hadoop-0.18.3/bin/hirb.rb Mon Dec 21 08:09:05 2009
@@ -234,6 +234,14 @@
hbase> get 't1', 'r1', {COLUMN => 'c1', TIMESTAMP => ts1, \\
VERSIONS => 4}
+ incr Increments a cell 'value' at specified table/row/column coordinates.
+ To increment a cell value in table 't1' at row 'r1' under column
+ 'c1' by 1 (can be omitted) or 10 do:
+
+ hbase> incr 't1', 'r1', 'c1'
+ hbase> incr 't1', 'r1', 'c1', 1
+ hbase> incr 't1', 'r1', 'c1', 10
+
list List all tables in hbase
put Put a cell 'value' at specified table/row/column and optionally
@@ -401,6 +409,10 @@
table(table).put(row, column, value, timestamp)
end
+def incr(table, row, column, value = nil)
+ table(table).incr(row, column, value)
+end
+
def scan(table, args = {})
table(table).scan(args)
end
Modified: hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/HTableDescriptor.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/HTableDescriptor.java?rev=892720&r1=892719&r2=892720&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/HTableDescriptor.java (original)
+++ hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/HTableDescriptor.java Mon Dec 21 08:09:05 2009
@@ -92,9 +92,9 @@
public static final boolean DEFAULT_READONLY = false;
- public static final int DEFAULT_MEMSTORE_FLUSH_SIZE = 1024*1024*64;
+ public static final long DEFAULT_MEMSTORE_FLUSH_SIZE = 1024*1024*64L;
- public static final int DEFAULT_MAX_FILESIZE = 1024*1024*256;
+ public static final long DEFAULT_MAX_FILESIZE = 1024*1024*256L;
private volatile Boolean meta = null;
private volatile Boolean root = null;
@@ -402,19 +402,19 @@
/**
* @return memory cache flush size for each hregion
*/
- public int getMemStoreFlushSize() {
+ public long getMemStoreFlushSize() {
byte [] value = getValue(MEMSTORE_FLUSHSIZE_KEY);
if (value != null)
- return Integer.valueOf(Bytes.toString(value)).intValue();
+ return Long.valueOf(Bytes.toString(value)).longValue();
return DEFAULT_MEMSTORE_FLUSH_SIZE;
}
/**
* @param memstoreFlushSize memory cache flush size for each hregion
*/
- public void setMemStoreFlushSize(int memstoreFlushSize) {
+ public void setMemStoreFlushSize(long memstoreFlushSize) {
setValue(MEMSTORE_FLUSHSIZE_KEY,
- Bytes.toBytes(Integer.toString(memstoreFlushSize)));
+ Bytes.toBytes(Long.toString(memstoreFlushSize)));
}
/**
Modified: hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/client/UnmodifyableHTableDescriptor.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/client/UnmodifyableHTableDescriptor.java?rev=892720&r1=892719&r2=892720&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/client/UnmodifyableHTableDescriptor.java (original)
+++ hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/client/UnmodifyableHTableDescriptor.java Mon Dec 21 08:09:05 2009
@@ -108,10 +108,10 @@
}
/**
- * @see org.apache.hadoop.hbase.HTableDescriptor#setMemStoreFlushSize(int)
+ * @see org.apache.hadoop.hbase.HTableDescriptor#setMemStoreFlushSize(long)
*/
@Override
- public void setMemStoreFlushSize(int memstoreFlushSize) {
+ public void setMemStoreFlushSize(long memstoreFlushSize) {
throw new UnsupportedOperationException("HTableDescriptor is read-only");
}
Modified: hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java?rev=892720&r1=892719&r2=892720&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java (original)
+++ hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java Mon Dec 21 08:09:05 2009
@@ -181,10 +181,10 @@
private volatile WriteState writestate = new WriteState();
- final int memstoreFlushSize;
+ final long memstoreFlushSize;
private volatile long lastFlushTime;
final FlushRequester flushListener;
- private final int blockingMemStoreSize;
+ private final long blockingMemStoreSize;
final long threadWakeFrequency;
// Used to guard splits and closes
private final ReentrantReadWriteLock splitsAndClosesLock =
@@ -215,11 +215,11 @@
*/
public HRegion(){
this.basedir = null;
- this.blockingMemStoreSize = 0;
+ this.blockingMemStoreSize = 0L;
this.conf = null;
this.flushListener = null;
this.fs = null;
- this.memstoreFlushSize = 0;
+ this.memstoreFlushSize = 0L;
this.log = null;
this.regionCompactionDir = null;
this.regiondir = null;
@@ -266,14 +266,14 @@
}
this.regionCompactionDir =
new Path(getCompactionDir(basedir), encodedNameStr);
- int flushSize = regionInfo.getTableDesc().getMemStoreFlushSize();
+ long flushSize = regionInfo.getTableDesc().getMemStoreFlushSize();
if (flushSize == HTableDescriptor.DEFAULT_MEMSTORE_FLUSH_SIZE) {
- flushSize = conf.getInt("hbase.hregion.memstore.flush.size",
+ flushSize = conf.getLong("hbase.hregion.memstore.flush.size",
HTableDescriptor.DEFAULT_MEMSTORE_FLUSH_SIZE);
}
this.memstoreFlushSize = flushSize;
this.blockingMemStoreSize = this.memstoreFlushSize *
- conf.getInt("hbase.hregion.memstore.block.multiplier", 1);
+ conf.getLong("hbase.hregion.memstore.block.multiplier", 2);
}
/**
@@ -2385,7 +2385,7 @@
}
public static final long FIXED_OVERHEAD = ClassSize.align(
- (3 * Bytes.SIZEOF_LONG) + (2 * Bytes.SIZEOF_INT) + Bytes.SIZEOF_BOOLEAN +
+ (5 * Bytes.SIZEOF_LONG) + Bytes.SIZEOF_BOOLEAN +
(19 * ClassSize.REFERENCE) + ClassSize.OBJECT);
public static final long DEEP_OVERHEAD = ClassSize.align(FIXED_OVERHEAD +
Modified: hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperWrapper.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperWrapper.java?rev=892720&r1=892719&r2=892720&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperWrapper.java (original)
+++ hadoop/hbase/branches/0.20_on_hadoop-0.18.3/src/java/org/apache/hadoop/hbase/zookeeper/ZooKeeperWrapper.java Mon Dec 21 08:09:05 2009
@@ -345,7 +345,11 @@
} catch (InterruptedException e) {
LOG.warn("Failed to set state node in ZooKeeper", e);
} catch (KeeperException e) {
- LOG.warn("Failed to set state node in ZooKeeper", e);
+ if(e.code() == KeeperException.Code.NODEEXISTS) {
+ LOG.debug("State node exists.");
+ } else {
+ LOG.warn("Failed to set state node in ZooKeeper", e);
+ }
}
return false;