code: protected Collector<OT> createSolutionSetUpdateOutputCollector(Collector<OT> delegate) {
  		Broker<CompactingHashTable<?>> solutionSetBroker = SolutionSetBroker.instance();
  
  		/*if (config.getIsSolutionSetUpdateWithoutReprobe()) {
  			@SuppressWarnings("unchecked")
  			MutableHashTable<OT, ?> solutionSet = (MutableHashTable<OT, ?>) solutionSetBroker.get(brokerKey());
  
  			return new SolutionSetFastUpdateOutputCollector<OT>(solutionSet, delegate);
  		} else {*/
  			@SuppressWarnings("unchecked")
  			CompactingHashTable<OT> solutionSet = (CompactingHashTable<OT>) solutionSetBroker.get(brokerKey());
  			TypeSerializer<OT> serializer = getOutputSerializer();
  			return new SolutionSetUpdateOutputCollector<OT>(solutionSet, serializer, delegate);
  		//}
  	}
docs: Creates a new solution set update output collector.
  <p/>
  This collector is used by {@link IterationIntermediatePactTask} or {@link IterationTailPactTask} to update the
  solution set of workset iterations. Depending on the task configuration, either a fast (non-probing)
  {@link eu.stratosphere.pact.runtime.iterative.io.SolutionSetFastUpdateOutputCollector} or normal (re-probing)
  {@link SolutionSetUpdateOutputCollector} is created.
  <p/>
  If a non-null delegate is given, the new {@link Collector} will write back to the solution set and also call
  collect(T) of the delegate.
  
  @param delegate null -OR- a delegate collector to be called by the newly created collector
  @return a new {@link eu.stratosphere.pact.runtime.iterative.io.SolutionSetFastUpdateOutputCollector} or
  {@link SolutionSetUpdateOutputCollector}