hadoop-mapreduce-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason Lowe (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (MAPREDUCE-5136) TestJobImpl->testJobNoTasks fails ..
Date Mon, 08 Apr 2013 20:55:16 GMT

     [ https://issues.apache.org/jira/browse/MAPREDUCE-5136?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Jason Lowe updated MAPREDUCE-5136:

            Assignee: Amir Sanjar
    Target Version/s: 2.0.5-beta
              Status: Patch Available  (was: Open)

When the patch is ready for review, please move the JIRA into the Patch Available state via
the "Submit Patch" button.  That triggers the QA bot to comment on the patch and also flags
the JIRA as being in a ready-to-review state for committers.

Also if you need to move JIRAs to other projects in the future, you can do this via the "Move"
option under the "More Actions" drop-down menu.
> TestJobImpl->testJobNoTasks fails ..
> ------------------------------------
>                 Key: MAPREDUCE-5136
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-5136
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>    Affects Versions: 2.0.3-alpha
>         Environment: Linux + IBM JAVA 6
>            Reporter: Amir Sanjar
>            Assignee: Amir Sanjar
>         Attachments: MAPREDUCE-5136.patch
> I am not sure if this is a testcase or a design issue. During execution of TestJobImpl->testJobNoTasks()
there is an assertion made based on the order of key/value pairs stored in adjacency list.
However adjacency list was created by Configuration->getValByRegex() as a HashMap (order
is not guaranteed):
> Testcase:
>     JobSubmittedEventHandler jseHandler = new JobSubmittedEventHandler("testId",
>         "testName", "testNodeName", "\"key2\"=\"value2\" \"key1\"=\"value1\" ");
>    ....
>    ....
>     try {
>       Assert.assertTrue(jseHandler.getAssertValue()); <===
> Configuration->getValByRegex():
> public Map<String,String> getValByRegex(String regex) {
>     Pattern p = Pattern.compile(regex);
>     Map<String,String> result = new HashMap<String,String>(); <=======
> as we all know, HashMap makes absolutely no guarantees about the iteration order. It
can (and will) even change completely when new elements are added.
> Changing HashMap to LinkedHashMap fixes the ordering inconsistency, however with a small
performance side effect. 

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

View raw message