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

Jonathan Hsieh commented on HBASE-11647:
----------------------------------------

I like where these tests are going.  Can you post some examples of how you kick 
off the test in the jira?

As an aside, the documentation in the IntegrationTestIngest could be improved, 
as could the docs in this the IntegrationTestIngestMOB. 

Explicitly call out this his an extension of the IntegrationTestIngest. that 
uses LoadTestTool to generate and writes mob sized data into hbase and verify 
it.
{quote}
+/**
+ * Integration Test for MOB ingest.
+ */
+@Category(IntegrationTests.class)
+public class IntegrationTestIngestMOB extends IntegrationTestIngest {
{quote}

Please provide some way of getting usage instructions and what the 
LoadTestDataGeneraetyorMob:x:y:z:w args are!
{quote}
+  public static void main(String[] args) throws Exception {
+    Configuration conf = HBaseConfiguration.create();
+    IntegrationTestingUtility.setUseDistributedCluster(conf);
+    int ret = ToolRunner.run(conf, new IntegrationTestIngestMOB(), args);
+    System.exit(ret);
+  }
{quote}

Add a comment here saying we add a another value generator that has different 
cols data size bounds to expcicitly test the mobs.
{quote}
+/**
+ * A load test data generator for MOB
+ */
+public class LoadTestDataGeneratorMOB
+    extends MultiThreadedAction.DefaultDataGenerator {
+
{quote}

This instanceof is a bad smell -- it breaks encapsulation -- can we do this in 
a cleaner way?  Maybe add in a "String..." or "Object..." arg so that we can 
handle all of these and without having to do the instanceof?  At the least, 
please  leave a TODO here to refactor so that we just use an interface and 
inheritance properly to avoid the instanceof.
{quote}
         }
+      } else if(dataGen instanceof LoadTestDataGeneratorMOB) {
+        LOG.info("Using LoadTestDataGeneratorMOB");
+        String mobCf = clazzAndArgs[1];
+        int minMobDataSize = Integer.parseInt(clazzAndArgs[2]);
+        int maxMobDataSize = Integer.parseInt(clazzAndArgs[3]);
+        LoadTestDataGeneratorMOB mobDatGen = (LoadTestDataGeneratorMOB)dataGen;
+        mobDatGen.configureMob(mobCf.getBytes(), minMobDataSize, 
maxMobDataSize);
+        args = clazzAndArgs.length==4? new String[0] : 
Arrays.copyOfRange(clazzAndArgs, 4, clazzAndArgs.length);
       } else {
{quote}



> MOB integration testing
> -----------------------
>
>                 Key: HBASE-11647
>                 URL: https://issues.apache.org/jira/browse/HBASE-11647
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Performance, test
>            Reporter: Jingcheng Du
>            Assignee: Jingcheng Du
>         Attachments: HBASE-11647.diff
>
>
> The integration testings include the integration function testing and 
> performance testing.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to