[
https://issues.apache.org/jira/browse/HBASE-15296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15241001#comment-15241001
]
Hudson commented on HBASE-15296:
--------------------------------
FAILURE: Integrated in HBase-Trunk_matrix #848 (See
[https://builds.apache.org/job/HBase-Trunk_matrix/848/])
HBASE-15296 Break out writer and reader from StoreFile. Done using (stack: rev
7efb9edecbdf8b35046230575d504e4caeb80f34)
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanWithBloomError.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/mob/TestCachedMobFile.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DefaultStoreFlusher.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.java
* hbase-spark/src/main/scala/org/apache/hadoop/hbase/spark/HBaseContext.scala
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/DefaultCompactor.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/DataBlockEncodingTool.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/RegionObserver.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DateTieredMultiFileWriter.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/AbstractMultiOutputCompactor.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/MockStoreFile.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/mob/MobUtils.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/mob/compactions/PartitionedMobCompactor.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileScanner.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreFile.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/BaseRegionObserver.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/MockStoreFileGenerator.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestReversibleScanners.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/SimpleRegionObserver.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreUtils.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStripeStoreEngine.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestFSErrorsExposed.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/io/HalfStoreFileReader.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestSeekBeforeWithInlineBlocks.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/CreateRandomStoreFile.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/mob/mapreduce/MemStoreWrapper.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/mob/DefaultMobStoreCompactor.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileInfo.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/EncodedSeekPerformanceTest.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileWriter.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFlusher.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompoundBloomFilter.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CompoundBloomFilterWriter.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/mob/TestMobFile.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompaction.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HMobStore.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/mob/TestMobFileCache.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionRequest.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileReader.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/mob/DefaultMobStoreFlusher.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHMobStore.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/TestCompactor.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/mob/compactions/TestPartitionedMobCompactor.java
*
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreFileScannerWithTagCompression.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/mob/MobTestUtil.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestPrefetch.java
> Break out writer and reader from StoreFile
> ------------------------------------------
>
> Key: HBASE-15296
> URL: https://issues.apache.org/jira/browse/HBASE-15296
> Project: HBase
> Issue Type: Improvement
> Components: regionserver
> Reporter: Appy
> Assignee: Appy
> Fix For: 2.0.0
>
> Attachments: HBASE-15296-branch-1.1.patch,
> HBASE-15296-branch-1.2.patch, HBASE-15296-branch-1.patch,
> HBASE-15296-master-v2.patch, HBASE-15296-master-v3.patch,
> HBASE-15296-master-v4.patch, HBASE-15296-master-v5.patch,
> HBASE-15296-master.patch
>
>
> StoreFile.java is trending to become a monolithic class, it's ~1800 lines.
> Would it make sense to break out reader and writer (~500 lines each) into
> separate files.
> We are doing so many different things in a single class: comparators, reader,
> writer, other stuff; and it hurts readability a lot, to the point that just
> reading through a piece of code require scrolling up and down to see which
> level (reader/writer/base class level) it belongs to. These small-small
> things really don't help while trying to understanding the code. There are
> good reasons we don't do these often (affects existing patches, needs to be
> done for all branches, etc). But this and a few other classes can really use
> a single iteration of refactoring to make things a lot better.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)