In 1.4 we have added Combiners, which are extensions to Iterators which provide 
Aggregator functionality. We care because this, along with our changes to 
Filter, make all of our internal elements operate in the same type of code. 
(For the record, Aggregators used to be applied in an AggregatingIterator.)  
Now that we have this functionality, we need to decide on what to do with 
Aggregators. They are the only option in 1.3, so there is some user base 
utilizing them. We did not deprecate them in 1.4, but that is an option. If not 
there, we need to decide when/if to deprecate them at all (and then whether or 
not we want to give it an extension to it's life-cycle while deprecated). The 
sooner we deprecate, the less likely users will cement themselves into using 
them rather than Combiners. This also means less code to maintain. However, 
there is the possibility that there are unknown (at least to me) benefits to 
using Aggregators over Combiners. I think we need to make a decision on this 
before we can proceed with the release of 1.4 since this will drive whether we 
end up deprecating more (Aggregators) or undeprecating things 
(PerColumnIteratorConfig).

Thoughts?

John

Reply via email to