You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mrunit.apache.org by "Ryan Chapin (JIRA)" <ji...@apache.org> on 2015/02/01 05:28:34 UTC

[jira] [Commented] (MRUNIT-217) MapReduceDriver does not seem to work with MultipleOutput

    [ https://issues.apache.org/jira/browse/MRUNIT-217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14300072#comment-14300072 ] 

Ryan Chapin commented on MRUNIT-217:
------------------------------------

I am seeing the same behavior with 1.1.0 attempting to use the MapReduceDriver with a reducer that is writing to multiple named outputs.

I have only stepped through the code once, so it wasn't exactly clear where the problem is.

As a work-around, instead of invoking the runTest() method on the MapReduceDriver instance I invoked run() and then examined the counter values to validate my test.

{code}
mapReduceDriver.run();
Counters counters = mapReduceDriver.getCounters();
long actualCounter = counters.findCounter(Enum.key).getValue());
{code}

> MapReduceDriver does not seem to work with MultipleOutput
> ---------------------------------------------------------
>
>                 Key: MRUNIT-217
>                 URL: https://issues.apache.org/jira/browse/MRUNIT-217
>             Project: MRUnit
>          Issue Type: Question
>    Affects Versions: 1.1.0
>            Reporter: mathieu lavoie
>
> Hi,
> I'm having an issue running a test with org.apache.hadoop.mrunit.mapreduce.MapReduceDriver using a reducer with multiple outputs. It seems like the generated results is always empty.
> It seems to work just fine for the ReduceDriver but not for the MapReduceDriver.
> The field:
> {noformat}
>   protected MockMultipleOutputs mos
> {noformat}
> Is set in the ReduceDriver using a mock but the MapReduceDriver is not aware of it. Therefore the TestDriver thinks that there is no result.
> Am I missing something ?
> Here is a snippet of the configuration of my test:
> {noformat}
> @RunWith(PowerMockRunner.class)
> @PrepareForTest({StandardMetricsByListenerReducer.class})
> public class StandardMetricsByListenerMapReduceTest {
>     private MapReduceDriver<Object, Text, StandardMetricsDayKeyWritable, StandardMetricsValueWriteable, StandardMetricsDayKeyWritable, StandardMetricsValueWriteable> mapReduceDriver;
>     @Before
>     public void setup() throws Exception {
>         StandardMetricsByListenerMapper mapper = new StandardMetricsByListenerMapper();
>         StandardMetricsByListenerReducer reducer = new StandardMetricsByListenerReducer();
>         mapReduceDriver = MapReduceDriver.newMapReduceDriver(mapper, reducer);
>     }
> }
> {noformat}
> Thanks



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)