-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.hbase.org/r/301/
-----------------------------------------------------------
(Updated 2010-07-12 21:41:44.943871)
Review request for hbase, stack, Karthik Ranganathan, and Kannan Muthukkaruppan.
Changes
-------
Fixes some issues introduced by also having executor services running on the
RS-side. Specifically, shutdown hooks to the HBaseExecutorService would
shutdown and clear all executor pools, rather than just those of the shutting
down server instance.
Now the map of services is always prefixed with the serverName and during
shutdown we only actually shutdown those prefixed with the serverName.
More unit tests are now passing, still finish the suite.
Summary
-------
Adds support for priorities and concurrency to regionserver flushing.
- Adds support for RS-side events/handlers/executors
- Adds support for prioritized HBaseEventHandlers
- Flushing now happens through FlushHandler, a new HBaseEventHandler. There is
an RS_FLUSHER executor pool that defaults to two threads right now but is also
checking a conf value. There is a good bit of documentation in FlushHandler.
- Adds unit test TestFlushHandler. There is a nicer way to detect when flushes
finish now for other tests.
- Handling of FS errors is pushed into FlushHandler now. The changes happening
with the master rewrite introduce a ServerStatus interface (probably a
RegionStatus for rs side) that will contain the necessary methods rather than
using HRegionServer directly as is required for now.
- Something weird not passing in tests with multiple masters and regionservers,
still working that out.
This addresses bug HBASE-2832.
http://issues.apache.org/jira/browse/HBASE-2832
Diffs (updated)
-----
trunk/src/main/java/org/apache/hadoop/hbase/executor/HBaseEventHandler.java
963507
trunk/src/main/java/org/apache/hadoop/hbase/executor/HBaseExecutorService.java
963507
trunk/src/main/java/org/apache/hadoop/hbase/master/HMaster.java 963507
trunk/src/main/java/org/apache/hadoop/hbase/regionserver/CompactSplitThread.java
963507
trunk/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
963507
trunk/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java
963507
trunk/src/main/java/org/apache/hadoop/hbase/regionserver/handler/FlushHandler.java
PRE-CREATION
trunk/src/test/java/org/apache/hadoop/hbase/regionserver/TestFlushHandler.java
PRE-CREATION
Diff: http://review.hbase.org/r/301/diff
Testing
-------
Adds TestFlushHandler which passes. Working on getting unit tests passing now,
something related to the ExecutorService.
Thanks,
Jonathan