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

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

    XMLWordPrintableJSON

Details

    • Test
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.95.2
    • 0.98.0, 0.95.2, 0.94.10
    • test
    • 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

        1. HBASE-8928-trunk.patch
          8 kB
          gautam
        2. HBASE-8928-0.94.patch
          9 kB
          gautam

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: