Author: ramkrishna Date: Mon May 20 16:37:17 2013 New Revision: 1484520 URL: http://svn.apache.org/r1484520 Log: HBASE-8282-User triggered flushes does not allow compaction to get triggered even if compaction criteria is met (Ram)
Modified: hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java Modified: hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java?rev=1484520&r1=1484519&r2=1484520&view=diff ============================================================================== --- hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java (original) +++ hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java Mon May 20 16:37:17 2013 @@ -1345,7 +1345,7 @@ public class HRegion implements HeapSize * <p>This method may block for some time, so it should not be called from a * time-sensitive thread. * - * @return true if cache was flushed + * @return true if the region needs compacting * * @throws IOException general io exceptions * @throws DroppedSnapshotException Thrown when replay of hlog is required Modified: hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java?rev=1484520&r1=1484519&r2=1484520&view=diff ============================================================================== --- hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java (original) +++ hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java Mon May 20 16:37:17 2013 @@ -3607,7 +3607,12 @@ public class HRegionServer implements Cl } FlushRegionResponse.Builder builder = FlushRegionResponse.newBuilder(); if (shouldFlush) { - builder.setFlushed(region.flushcache()); + boolean result = region.flushcache(); + if (result) { + this.compactSplitThread.requestCompaction(region, + "Compaction through user triggered flush"); + } + builder.setFlushed(result); } builder.setLastFlushTime(region.getLastFlushTime()); return builder.build();