[ 
https://issues.apache.org/jira/browse/HBASE-8282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13662421#comment-13662421
 ] 

Lars Hofhansl commented on HBASE-8282:
--------------------------------------

I'm happy to either push to 0.94.9 or say that we won't fix this in 0.94. 
Opinions?
                
> User triggered flushes does not allow compaction to get triggered even if 
> compaction criteria is met
> ----------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-8282
>                 URL: https://issues.apache.org/jira/browse/HBASE-8282
>             Project: HBase
>          Issue Type: Bug
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 0.98.0, 0.94.8, 0.95.1
>
>         Attachments: HBASE-8282_trunk_1.patch, HBASE-8282_trunk.patch
>
>
> Observe the below logs
> {code}
> 2013-04-04 17:43:45,825 INFO 
> org.apache.hadoop.hbase.regionserver.HRegionServer: Flushing 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9.
> 2013-04-04 17:43:45,826 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Started memstore flush for 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., current region 
> memstore size 42.3 M
> 2013-04-04 17:43:45,826 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., commencing wait for 
> mvcc, flushsize=44388936
> 2013-04-04 17:43:45,826 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting, commencing flushing stores
> 2013-04-04 17:43:45,831 DEBUG org.apache.hadoop.hbase.util.FSUtils: Creating 
> file=hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/7020db24b38246a5818e7eb4e130ad9e
>  with permission=rwxrwxrwx
> 2013-04-04 17:43:45,834 DEBUG org.apache.hadoop.hbase.io.hfile.HFileWriterV2: 
> Initialized with CacheConfig:enabled [cacheDataOnRead=true] 
> [cacheDataOnWrite=false] [cacheIndexesOnWrite=false] 
> [cacheBloomsOnWrite=false] [cacheEvictOnClose=false] [cacheCompressed=false]
> 2013-04-04 17:43:45,835 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> Delete Family Bloom filter type for 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/7020db24b38246a5818e7eb4e130ad9e:
>  CompoundBloomFilterWriter
> 2013-04-04 17:43:46,074 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> NO General Bloom and NO DeleteFamily was added to HFile 
> (hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/7020db24b38246a5818e7eb4e130ad9e)
>  
> 2013-04-04 17:43:46,074 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Flushed , sequenceid=1051817, memsize=42.3 M, into tmp file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/7020db24b38246a5818e7eb4e130ad9e
> 2013-04-04 17:43:46,093 DEBUG 
> org.apache.hadoop.hbase.regionserver.HRegionFileSystem: Committing store file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/7020db24b38246a5818e7eb4e130ad9e
>  as 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/7020db24b38246a5818e7eb4e130ad9e
> 2013-04-04 17:43:46,103 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Added 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/7020db24b38246a5818e7eb4e130ad9e,
>  entries=54911, sequenceid=1051817, filesize=35.1 M
> 2013-04-04 17:43:46,103 INFO org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished memstore flush of ~42.3 M/44388936, currentsize=0/0 for region 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9. in 278ms, 
> sequenceid=-1, compaction requested=true
> 2013-04-04 17:43:56,335 DEBUG org.apache.hadoop.hbase.io.hfile.LruBlockCache: 
> Stats: total=394.09 MB, free=3.61 GB, max=4.00 GB, blocks=5263, 
> accesses=244882, hits=42988, hitRatio=17.55%, , cachingAccesses=49869, 
> cachingHits=24251, cachingHitsRatio=48.63%, , evictions=0, evicted=20349, 
> evictedPerRun=Infinity
> 2013-04-04 17:44:31,119 INFO 
> org.apache.hadoop.hbase.regionserver.HRegionServer: Flushing 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9.
> 2013-04-04 17:44:31,120 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Started memstore flush for 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., current region 
> memstore size 42.7 M
> 2013-04-04 17:44:31,120 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., commencing wait for 
> mvcc, flushsize=44764248
> 2013-04-04 17:44:31,120 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting, commencing flushing stores
> 2013-04-04 17:44:31,136 DEBUG org.apache.hadoop.hbase.util.FSUtils: Creating 
> file=hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/c5c2cd6aaf1644daa9c858149da39081
>  with permission=rwxrwxrwx
> 2013-04-04 17:44:31,139 DEBUG org.apache.hadoop.hbase.io.hfile.HFileWriterV2: 
> Initialized with CacheConfig:enabled [cacheDataOnRead=true] 
> [cacheDataOnWrite=false] [cacheIndexesOnWrite=false] 
> [cacheBloomsOnWrite=false] [cacheEvictOnClose=false] [cacheCompressed=false]
> 2013-04-04 17:44:31,140 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> Delete Family Bloom filter type for 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/c5c2cd6aaf1644daa9c858149da39081:
>  CompoundBloomFilterWriter
> 2013-04-04 17:44:31,341 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> NO General Bloom and NO DeleteFamily was added to HFile 
> (hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/c5c2cd6aaf1644daa9c858149da39081)
>  
> 2013-04-04 17:44:31,341 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Flushed , sequenceid=1051858, memsize=42.7 M, into tmp file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/c5c2cd6aaf1644daa9c858149da39081
> 2013-04-04 17:44:31,356 DEBUG 
> org.apache.hadoop.hbase.regionserver.HRegionFileSystem: Committing store file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/c5c2cd6aaf1644daa9c858149da39081
>  as 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/c5c2cd6aaf1644daa9c858149da39081
> 2013-04-04 17:44:31,365 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Added 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/c5c2cd6aaf1644daa9c858149da39081,
>  entries=55156, sequenceid=1051858, filesize=35.5 M
> 2013-04-04 17:44:31,365 INFO org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished memstore flush of ~42.7 M/44764248, currentsize=0/0 for region 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9. in 245ms, 
> sequenceid=-1, compaction requested=true
> 2013-04-04 17:45:09,450 DEBUG org.apache.hadoop.hbase.regionserver.LogRoller: 
> HLog roll requested
> 2013-04-04 17:45:09,458 DEBUG 
> org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogWriter: using new 
> createWriter -- HADOOP-6840
> 2013-04-04 17:45:09,458 DEBUG 
> org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogWriter: 
> Path=hdfs://localhost:9010/hbase/.logs/ram.sh.intel.com,60020,1365040136175/ram.sh.intel.com%2C60020%2C1365040136175.1365111909450,
>  compression=false
> 2013-04-04 17:45:09,462 INFO org.apache.hadoop.hbase.regionserver.wal.FSHLog: 
> Rolled log for 
> file=/hbase/.logs/ram.sh.intel.com,60020,1365040136175/ram.sh.intel.com%2C60020%2C1365040136175.1365111822437,
>  entries=70, filesize=65061576; new 
> path=/hbase/.logs/ram.sh.intel.com,60020,1365040136175/ram.sh.intel.com%2C60020%2C1365040136175.1365111909450
> 2013-04-04 17:45:51,419 INFO 
> org.apache.hadoop.hbase.regionserver.HRegionServer: Flushing 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9.
> 2013-04-04 17:45:51,419 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Started memstore flush for 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., current region 
> memstore size 42.4 M
> 2013-04-04 17:45:51,420 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., commencing wait for 
> mvcc, flushsize=44419376
> 2013-04-04 17:45:51,420 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting, commencing flushing stores
> 2013-04-04 17:45:51,428 DEBUG org.apache.hadoop.hbase.util.FSUtils: Creating 
> file=hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/6c502092c27a4eae847a51109e764be3
>  with permission=rwxrwxrwx
> 2013-04-04 17:45:51,432 DEBUG org.apache.hadoop.hbase.io.hfile.HFileWriterV2: 
> Initialized with CacheConfig:enabled [cacheDataOnRead=true] 
> [cacheDataOnWrite=false] [cacheIndexesOnWrite=false] 
> [cacheBloomsOnWrite=false] [cacheEvictOnClose=false] [cacheCompressed=false]
> 2013-04-04 17:45:51,433 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> Delete Family Bloom filter type for 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/6c502092c27a4eae847a51109e764be3:
>  CompoundBloomFilterWriter
> 2013-04-04 17:45:51,627 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> NO General Bloom and NO DeleteFamily was added to HFile 
> (hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/6c502092c27a4eae847a51109e764be3)
>  
> 2013-04-04 17:45:51,627 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Flushed , sequenceid=1051899, memsize=42.4 M, into tmp file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/6c502092c27a4eae847a51109e764be3
> 2013-04-04 17:45:51,645 DEBUG 
> org.apache.hadoop.hbase.regionserver.HRegionFileSystem: Committing store file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/6c502092c27a4eae847a51109e764be3
>  as 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/6c502092c27a4eae847a51109e764be3
> 2013-04-04 17:45:51,654 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Added 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/6c502092c27a4eae847a51109e764be3,
>  entries=54781, sequenceid=1051899, filesize=35.2 M
> 2013-04-04 17:45:51,654 INFO org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished memstore flush of ~42.4 M/44419376, currentsize=0/0 for region 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9. in 235ms, 
> sequenceid=-1, compaction requested=true
> 2013-04-04 17:47:36,168 INFO 
> org.apache.hadoop.hbase.regionserver.HRegionServer: Flushing 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9.
> 2013-04-04 17:47:36,168 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Started memstore flush for 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., current region 
> memstore size 42.5 M
> 2013-04-04 17:47:36,169 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9., commencing wait for 
> mvcc, flushsize=44568408
> 2013-04-04 17:47:36,169 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished snapshotting, commencing flushing stores
> 2013-04-04 17:47:36,177 DEBUG org.apache.hadoop.hbase.util.FSUtils: Creating 
> file=hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/b1f04e64c8be4ea1bd1d95f8a4ee8936
>  with permission=rwxrwxrwx
> 2013-04-04 17:47:36,194 DEBUG org.apache.hadoop.hbase.io.hfile.HFileWriterV2: 
> Initialized with CacheConfig:enabled [cacheDataOnRead=true] 
> [cacheDataOnWrite=false] [cacheIndexesOnWrite=false] 
> [cacheBloomsOnWrite=false] [cacheEvictOnClose=false] [cacheCompressed=false]
> 2013-04-04 17:47:36,194 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> Delete Family Bloom filter type for 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/b1f04e64c8be4ea1bd1d95f8a4ee8936:
>  CompoundBloomFilterWriter
> 2013-04-04 17:47:36,426 INFO org.apache.hadoop.hbase.regionserver.StoreFile: 
> NO General Bloom and NO DeleteFamily was added to HFile 
> (hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/b1f04e64c8be4ea1bd1d95f8a4ee8936)
>  
> 2013-04-04 17:47:36,426 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Flushed , sequenceid=1051940, memsize=42.5 M, into tmp file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/b1f04e64c8be4ea1bd1d95f8a4ee8936
> 2013-04-04 17:47:36,443 DEBUG 
> org.apache.hadoop.hbase.regionserver.HRegionFileSystem: Committing store file 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/.tmp/b1f04e64c8be4ea1bd1d95f8a4ee8936
>  as 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/b1f04e64c8be4ea1bd1d95f8a4ee8936
> 2013-04-04 17:47:36,452 INFO org.apache.hadoop.hbase.regionserver.HStore: 
> Added 
> hdfs://localhost:9010/hbase/MyTable/f6792086ad3518dee244e7bf2761a1f9/f1/b1f04e64c8be4ea1bd1d95f8a4ee8936,
>  entries=55107, sequenceid=1051940, filesize=35.3 M
> 2013-04-04 17:47:36,452 INFO org.apache.hadoop.hbase.regionserver.HRegion: 
> Finished memstore flush of ~42.5 M/44568408, currentsize=0/0 for region 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9. in 284ms, 
> sequenceid=-1, compaction requested=true
> 2013-04-04 17:47:57,196 DEBUG org.apache.hadoop.hbase.regionserver.LogRoller: 
> HLog roll requested
> 2013-04-04 17:47:57,203 DEBUG 
> org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogWriter: using new 
> createWriter -- HADOOP-6840
> 2013-04-04 17:47:57,203 DEBUG 
> org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogWriter: 
> Path=hdfs://localhost:9010/hbase/.logs/ram.sh.intel.com,60020,1365040136175/ram.sh.intel.com%2C60020%2C1365040136175.1365112077196,
>  compression=false
> 2013-04-04 17:47:57,208 INFO org.apache.hadoop.hbase.regionserver.wal.FSHLog: 
> Rolled log for 
> file=/hbase/.logs/ram.sh.intel.com,60020,1365040136175/ram.sh.intel.com%2C60020%2C1365040136175.1365111909450,
>  entries=70, filesize=64871151; new 
> path=/hbase/.logs/ram.sh.intel.com,60020,1365040136175/ram.sh.intel.com%2C60020%2C1365040136175.1365112077196
> 2013-04-04 17:48:16,796 INFO 
> org.apache.hadoop.hbase.regionserver.HRegionServer: Flushing 
> MyTable,,1365111467842.f6792086ad3518dee244e7bf2761a1f9.
> .............
> {code}
> The above logs continued and created around 38 files.
> Later when the RS was restarted 
> {code}
> 2013-04-04 18:36:18,007 INFO 
> org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactionPolicy: 
> Default compaction algorithm has selected 38 files from 38 candidates
> {code}
> The compaction happeneded for the 38 files.
> The reason for the above is this, USer triggered flushes happen thro
> HRS.flushRegion()
> {code}
> FlushRegionResponse.Builder builder = FlushRegionResponse.newBuilder();
>       if (shouldFlush) {
>         builder.setFlushed(region.flushcache());
>       }
>       builder.setLastFlushTime(region.getLastFlushTime());
>       return builder.build();
> {code}
> Here we call region.flushCache but the return value is never used.  The 
> return value is nothing but the variable which says a compaction is needed 
> after this flush or not (that is returned by internalFlushCache).  In the 
> HRS.flushRegion method the return value is ignored.
> But the same when it happens thro MemstoreFlusher the return value is used 
> and we call requestCompaction.
> {code}
> try {
>       boolean shouldCompact = region.flushcache();
>       // We just want to check the size
>       boolean shouldSplit = region.checkSplit() != null;
>       if (shouldSplit) {
>         this.server.compactSplitThread.requestSplit(region);
>       } else if (shouldCompact) {
>         server.compactSplitThread.requestCompaction(region, 
> Thread.currentThread().getName());
>       }
> {code}
> Doing the above step in HRS.flushRegion() should be enough i feel.
> I had a doubt here if user triggered flush had to behave differently.  The 
> same can be observed in the 0.94 code also.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to