Hi,

Would someone please explain why ReduceContext.nextKeyValue() creates only a
single instance of the deserializing class?
This is a rather non-standard semantics for deserialization and drove me
insane.

E.g., the following code is rather intuitive but patently wrong; it always
adds a single instance of V to the set.

void reduce(K key, Iterable<V> values, Context context) {
    TreeSet<V> union = new TreeSet<V>();
    for (V v : values) {
        union.add(v);
    }
}

Thanks,

stan

Reply via email to