Bigtop
  1. Bigtop
  2. BIGTOP-726

make it possible to run HiveBulkScriptExecutor scripts selectively

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.5.0
    • Fix Version/s: 0.5.0
    • Component/s: tests
    • Labels:
      None

      Description

      TestHiveSmokeBulk and IntegrationTestHiveSmokeBulk both use the HiveBulkScriptExecutor to run all the hive scripts in a particular resource directory hierarchy. The two tests are run with OrderedParameterized and we get a test per script. However, there is no way to run just one script, or some subset of the scripts. This capability is very useful as the hive scripts take a long time to run in total.

      1. BIGTOP-726.txt
        3 kB
        Wing Yew Poon

        Activity

        Hide
        Wing Yew Poon added a comment - - edited

        Attached is a patch. Two system properties are introduced in each test class: <fully-qualified-class-name>.test_include and <fully-qualified-class-name>.test_exclude. The values should be comma-separated lists of the names of the scripts. The two properties are used in a mutually exclusive fashion; if test_include is passed in, then it is used to filter in the script(s) to run; else if test_exclude is passed in, it is used to filter out the script(s) not to run. test_include is handy for running one or two scripts. test_exclude is handy for excluding the most time-consuming test case(s) (in the case of TestHiveSmokeBulk, the single biggest time hog takes 50 mins).

        Show
        Wing Yew Poon added a comment - - edited Attached is a patch. Two system properties are introduced in each test class: <fully-qualified-class-name>.test_include and <fully-qualified-class-name>.test_exclude. The values should be comma-separated lists of the names of the scripts. The two properties are used in a mutually exclusive fashion; if test_include is passed in, then it is used to filter in the script(s) to run; else if test_exclude is passed in, it is used to filter out the script(s) not to run. test_include is handy for running one or two scripts. test_exclude is handy for excluding the most time-consuming test case(s) (in the case of TestHiveSmokeBulk, the single biggest time hog takes 50 mins).
        Hide
        Roman Shaposhnik added a comment -

        +1 and committed.

        P.S. Something that's been on my TODO list forever: move BulkScriptExecutor into the itest-common

        Show
        Roman Shaposhnik added a comment - +1 and committed. P.S. Something that's been on my TODO list forever: move BulkScriptExecutor into the itest-common

          People

          • Assignee:
            Wing Yew Poon
            Reporter:
            Wing Yew Poon
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development