You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Joe Mudd (JIRA)" <ji...@apache.org> on 2014/04/25 22:25:16 UTC

[jira] [Created] (MAPREDUCE-5860) Hadoop pipes Combiner is closed before all of its reduce calls

Joe Mudd created MAPREDUCE-5860:
-----------------------------------

             Summary: Hadoop pipes Combiner is closed before all of its reduce calls
                 Key: MAPREDUCE-5860
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-5860
             Project: Hadoop Map/Reduce
          Issue Type: Bug
          Components: pipes
    Affects Versions: 0.23.0
         Environment: 0.23.0 on 64 bit linux
            Reporter: Joe Mudd
            Priority: Minor


When a Combiner is specified to runTask() its reduce() method may be called after its close() method has been called due to how the Combiner's containing object, CombineRunner, is closed after the TaskContextImpl's reducer member is closed (see TaskContextImpl::closeAll()).

I believe the fix is to delegate the Combiner's ownership to CombineRunner, making it responsible for calling the Combiner's close() method and deleting the Combiner instance.



--
This message was sent by Atlassian JIRA
(v6.2#6252)