[hadoop]MAPREDUCE-4936 Report

1. Symptom

JobImpl uber checks for cpu are wrong

1.1 Severity

critical

1.2 Was there exception thrown?

Yes

1.2.1 Were there multiple exceptions?

No

1.3 Scope of the failure

Testcase failure

2. How to reproduce this failure

2.0 Version

2.0.0-alpha

2.1 Configuration

1 MR

2.2 Reproduction procedure

1. Run TestUberAM Unit test

2.2.1 Timing order

NA

2.2.2 Events order externally controllable?

Yes

2.3 Can the logs tell how to reproduce the failure?

Yes

2.4 How many machines needed?

1

3. Diagnosis procedure

3.1 Detailed Symptom (where you start)

Unit Test assertion failed.

3.2 Backward inference

Use the wrong operator in the cpu check code, which makes the TestUberAM unit test to fail.

4. Root cause

1. the defaults are hardcoded instead of using the conf defaults

2. the comparison against the sys cpu size is using < instead of <=

4.1 Category:

semantic

5. Fix

5.1 How?

Change the < to <= to pass TestUberAM.

Read configuration file to get CPU core num.