[ 
https://issues.apache.org/jira/browse/HBASE-8928?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

gautam updated HBASE-8928:
--------------------------

    Description: 
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 visibility.
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.


  was:
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 visibility.
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.

    
> Make ChaosMonkey & LoadTest tools extensible, to allow addition of more 
> actions and policies.
> ---------------------------------------------------------------------------------------------
>
>                 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
>
> 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 visibility.
> 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

Reply via email to