[
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:
{code}
/**
* A context for a Policy
*/
- private static class PolicyContext extends ActionContext {
- PolicyContext(IntegrationTestingUtility util) {
+ public static class PolicyContext extends ActionContext {
+ public PolicyContext(IntegrationTestingUtility util) {
super(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;
}
{code}
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 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
> 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 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