[ https://issues.apache.org/jira/browse/MAPREDUCE-1347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13056719#comment-13056719 ]
Todd Lipcon commented on MAPREDUCE-1347: ---------------------------------------- Looks like there is a strange character on this line: {code} + // Overriding to not use 'job', its unnecessary for the test caseĆ {code} bq. + // Ideally, this method should get called ONLY once per "name". I think the word "ideally" implies that it might not be that way. It should read "This method must be called only once..." > Missing synchronization in MultipleOutputFormat > ----------------------------------------------- > > Key: MAPREDUCE-1347 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-1347 > Project: Hadoop Map/Reduce > Issue Type: Bug > Affects Versions: 0.20.2, 0.21.0, 0.22.0 > Reporter: Todd Lipcon > Assignee: Harsh J > Fix For: 0.23.0 > > Attachments: MAPREDUCE-1347.r2.diff, MAPREDUCE-1347.r3.diff, > MAPREDUCE-1347.r4.diff, MAPREDUCE-1347.r5.diff, mapreduce.1347.r1.diff > > > MultipleOutputFormat's RecordWriter implementation doesn't use > synchronization when accessing the recordWriters member. When using > multithreaded mappers or reducers, this can result in problems where two > threads will both try to create the same file, causing > AlreadyBeingCreatedException. Doing this more fine-grained than just > synchronizing the whole method is probably a good idea, so that multithreaded > mappers can actually achieve parallelism writing into separate output streams. > From what I can tell, the new API's MultipleOutputs seems not to have this > issue. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira