I seem to have made a few typos in the code. This is how it should read: /*****************/ public class MyReducer extends Reducer<Text, Text, Text, Text> { @Override public void reduce(Text key, Iterable<Text> values, Reducer<Text, Text, Text, Text>.Context context) throws IOException, InterruptedException { Text value = new Text(); Text lastValue = new Text(); Iterator<Text> valuesIterator = values.iterator();
while(valuesIterator.hasNext()) { value = valuesIterator.next(); if(!value.equals(lastValue)){ context.write(key, value); lastValue = value; } } } } /*****************/ My description of the problem stands. -Steven Willis