You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@accumulo.apache.org by Bill Havanki <bh...@clouderagovt.com> on 2014/02/20 20:16:53 UTC

Review Request 18317: ACCUMULO-2380 - More useful output for functional tests run under MR

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18317/
-----------------------------------------------------------

Review request for accumulo.


Bugs: ACCUMULO-2380
    https://issues.apache.org/jira/browse/ACCUMULO-2380


Repository: accumulo


Description
-------

Changes to the functional test framework for more useful output when run under MapReduce.

* run.py supports a new -m option. When passed, it produces an extra line of output per test with a code for the test outcome and the test's name (string form of the testcase object). The string is used as the output from the map phase of RunTests.
* run.py also exits with status code 1 if any test does not pass, to help with scripting.
* The clean_logging method in TestUtils.py was made forgiving when deleting temporary log configuration files. The need for this was seen during testing.
* The mapper in RunTests, which runs each functional test, was updated to:
  * pass -m to run.py
  * only send the special output triggered by -m to the reduce phase
  * insert the Hadoop task attempt ID into the special output, to allow testers to trace a test run to its map task
  * increment counters based on test outcome

The net result of these changes is that a hadoop fs -cat of the reducer output files from the job becomes a report on the overall test results, with a line for each test run with its task attempt ID, outcome code, and task name. In addition, counters can be observed during and after the run to get a glimpse of overall status.


Diffs
-----

  src/server/src/main/java/org/apache/accumulo/server/test/functional/RunTests.java 1a19bb5799382d22bf1b7e7bffd22f9f201ccaf4 
  test/system/auto/TestUtils.py f36b01794395976c12c0124078cb4aac46808f56 
  test/system/auto/run.py 447539866e4760682218c397cc63548112675032 

Diff: https://reviews.apache.org/r/18317/diff/


Testing
-------

Ran functional tests under MapReduce on a 3-node VM cluster. Verified the correctness of the reducer output and use of counters. Also tested running run.py directly for correct output generation with -m there.


Thanks,

Bill Havanki


Re: Review Request 18317: ACCUMULO-2380 - More useful output for functional tests run under MR

Posted by Eric Newton <er...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18317/#review35049
-----------------------------------------------------------

Ship it!


Ship It!

- Eric Newton


On Feb. 20, 2014, 7:16 p.m., Bill Havanki wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18317/
> -----------------------------------------------------------
> 
> (Updated Feb. 20, 2014, 7:16 p.m.)
> 
> 
> Review request for accumulo.
> 
> 
> Bugs: ACCUMULO-2380
>     https://issues.apache.org/jira/browse/ACCUMULO-2380
> 
> 
> Repository: accumulo
> 
> 
> Description
> -------
> 
> Changes to the functional test framework for more useful output when run under MapReduce.
> 
> * run.py supports a new -m option. When passed, it produces an extra line of output per test with a code for the test outcome and the test's name (string form of the testcase object). The string is used as the output from the map phase of RunTests.
> * run.py also exits with status code 1 if any test does not pass, to help with scripting.
> * The clean_logging method in TestUtils.py was made forgiving when deleting temporary log configuration files. The need for this was seen during testing.
> * The mapper in RunTests, which runs each functional test, was updated to:
>   * pass -m to run.py
>   * only send the special output triggered by -m to the reduce phase
>   * insert the Hadoop task attempt ID into the special output, to allow testers to trace a test run to its map task
>   * increment counters based on test outcome
> 
> The net result of these changes is that a hadoop fs -cat of the reducer output files from the job becomes a report on the overall test results, with a line for each test run with its task attempt ID, outcome code, and task name. In addition, counters can be observed during and after the run to get a glimpse of overall status.
> 
> 
> Diffs
> -----
> 
>   src/server/src/main/java/org/apache/accumulo/server/test/functional/RunTests.java 1a19bb5799382d22bf1b7e7bffd22f9f201ccaf4 
>   test/system/auto/TestUtils.py f36b01794395976c12c0124078cb4aac46808f56 
>   test/system/auto/run.py 447539866e4760682218c397cc63548112675032 
> 
> Diff: https://reviews.apache.org/r/18317/diff/
> 
> 
> Testing
> -------
> 
> Ran functional tests under MapReduce on a 3-node VM cluster. Verified the correctness of the reducer output and use of counters. Also tested running run.py directly for correct output generation with -m there.
> 
> 
> Thanks,
> 
> Bill Havanki
> 
>


Re: Review Request 18317: ACCUMULO-2380 - More useful output for functional tests run under MR

Posted by Bill Havanki <bh...@clouderagovt.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18317/#review35045
-----------------------------------------------------------



test/system/auto/run.py
<https://reviews.apache.org/r/18317/#comment65418>

    I will remove these commented lines upon commit.


- Bill Havanki


On Feb. 20, 2014, 2:16 p.m., Bill Havanki wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18317/
> -----------------------------------------------------------
> 
> (Updated Feb. 20, 2014, 2:16 p.m.)
> 
> 
> Review request for accumulo.
> 
> 
> Bugs: ACCUMULO-2380
>     https://issues.apache.org/jira/browse/ACCUMULO-2380
> 
> 
> Repository: accumulo
> 
> 
> Description
> -------
> 
> Changes to the functional test framework for more useful output when run under MapReduce.
> 
> * run.py supports a new -m option. When passed, it produces an extra line of output per test with a code for the test outcome and the test's name (string form of the testcase object). The string is used as the output from the map phase of RunTests.
> * run.py also exits with status code 1 if any test does not pass, to help with scripting.
> * The clean_logging method in TestUtils.py was made forgiving when deleting temporary log configuration files. The need for this was seen during testing.
> * The mapper in RunTests, which runs each functional test, was updated to:
>   * pass -m to run.py
>   * only send the special output triggered by -m to the reduce phase
>   * insert the Hadoop task attempt ID into the special output, to allow testers to trace a test run to its map task
>   * increment counters based on test outcome
> 
> The net result of these changes is that a hadoop fs -cat of the reducer output files from the job becomes a report on the overall test results, with a line for each test run with its task attempt ID, outcome code, and task name. In addition, counters can be observed during and after the run to get a glimpse of overall status.
> 
> 
> Diffs
> -----
> 
>   src/server/src/main/java/org/apache/accumulo/server/test/functional/RunTests.java 1a19bb5799382d22bf1b7e7bffd22f9f201ccaf4 
>   test/system/auto/TestUtils.py f36b01794395976c12c0124078cb4aac46808f56 
>   test/system/auto/run.py 447539866e4760682218c397cc63548112675032 
> 
> Diff: https://reviews.apache.org/r/18317/diff/
> 
> 
> Testing
> -------
> 
> Ran functional tests under MapReduce on a 3-node VM cluster. Verified the correctness of the reducer output and use of counters. Also tested running run.py directly for correct output generation with -m there.
> 
> 
> Thanks,
> 
> Bill Havanki
> 
>