Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-8928

Make ChaosMonkey & LoadTest tools extensible, to allow addition of more actions and policies.

    Details

    • Type: Test
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.95.2
    • Fix Version/s: 0.98.0, 0.95.2, 0.94.10
    • Component/s: test
    • Labels:
      None

      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.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                gautam.soni gautam
                Reporter:
                gautam.soni gautam
              • Votes:
                1 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: