[ https://issues.apache.org/jira/browse/HBASE-10592?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13909851#comment-13909851 ]
Andrew Purtell commented on HBASE-10592: ---------------------------------------- +1 for 0.98. I don't believe we should expose any kind of user facing API from code in test/. If we want to make PE something that users are encouraged to build upon, the sources should first be moved from test/ to main/, and then interface annotations should be added. > Refactor PerformanceEvaluation tool > ----------------------------------- > > Key: HBASE-10592 > URL: https://issues.apache.org/jira/browse/HBASE-10592 > Project: HBase > Issue Type: Improvement > Components: test > Affects Versions: 0.96.2, 0.98.1, 0.99.0 > Reporter: Nick Dimiduk > Assignee: Nick Dimiduk > Priority: Minor > Fix For: 0.99.0 > > Attachments: HBASE-10592.00-0.96.patch, HBASE-10592.00-0.98.patch, > HBASE-10592.00.patch > > > PerfEval is kind of a mess. It's painful to add new features because the test > options are itemized and passed as parameters to internal methods. > Serialization is hand-rolled and tedious. Ensuring support for mapreduce mode > is a chore because of it. > This patch refactors the tool. Options are now passed around to methods and > such as a POJO instead of one-by-one. Get rid of accessors that don't help > anyone. On the mapreduce side, serialization is now handled using json > (jackson is a dependency anyway) instead of the hand-rolled regex we used > before. Also do away with custom InputSplit and FileFormat, instead using > Text and NLineInputFormat. On the local mode side, combine 1 client and N > clients into the same implementation. That implementation now uses an > ExecutorService, so we can later decouple number of client workers from > number of client tasks. Finally, drop a bunch of confusing local state, > instead use the new TestOptions POJO as a parameter to static methods. -- This message was sent by Atlassian JIRA (v6.1.5#6160)