hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesse Yates (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-8928) Make ChaosMonkey & LoadTest tools extensible, to allow addition of more actions and policies.
Date Tue, 16 Jul 2013 16:56:50 GMT

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

Jesse Yates commented on HBASE-8928:

Looks like the visibility stuff for ChaosMonkey already exist in tip of 0.94, except for:
    * A context for a Policy
-  private static class PolicyContext extends ActionContext {
-    PolicyContext(IntegrationTestingUtility util) {
+  public static class PolicyContext extends ActionContext {
+    public PolicyContext(IntegrationTestingUtility util) {
@@ -440,7 +441,8 @@ public class ChaosMonkey extends AbstractHBaseTool implements Stoppable
    * A policy to introduce chaos to the cluster
   public static abstract class Policy extends StoppableImplementation implements Runnable
-    PolicyContext context;
+    protected PolicyContext context;
     public void init(PolicyContext context) throws Exception {
       this.context = context;

Which is out of date for the current state of 0.94; want to take another look? LoadTest visibilities
looks good to me for 0.94.
> Make ChaosMonkey & LoadTest tools extensible, to allow addition of more actions and
> ---------------------------------------------------------------------------------------------
>                 Key: HBASE-8928
>                 URL: https://issues.apache.org/jira/browse/HBASE-8928
>             Project: HBase
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 0.95.2
>            Reporter: gautam
>            Assignee: Enis Soztutar
>         Attachments: HBASE-8928-0.94.patch, HBASE-8928-trunk.patch
> Let me split this requirement into 2 parts:
> i) ChaosMonkey
> I was trying to add more tests around new actions and policies by leveraging the existing
classes nested inside ChaosMonkey.
> But it turned out that some of the classes cannot be used outside, unless we make those
visible to the world.
> Here is an example:
> I cannot extend ChaosMonkey.Action, as the init(ActionContext context) method has package-wide
> There are other places as well which makes it impossible for anyone to extend on top
of this hierarchy.
> ii) LoadTestTool
> I wanted to extend this tool to define failure/pass criteria based on % of read/write
failed, rather than comparing against absolute 0. 
> For that this beautiful class should mark some of its properties usable by its child,
by marking those protected.
> I wanted to get unblocked here first. 
> Once this gets fixed, I think I can take up a JIRA item to refactor these tools, if required.

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

View raw message