Look here:
https://github.com/twitter/scalding/blob/develop/src/main/scala/com/twitter/scalding/TupleBase.scala#L55
We should add a method to set into an existing Tuple and not necessarily reallocate.
The reason is cascading will not keep a reference to your tuple after you put it into the collector, so it is safe to reuse just one Tuple inside the operations, which should reduce GC pressure.
Calling TupleSetter.set(t : T, ctup: CTuple)
is probably what we want, which will reset ctup to contain exactly t, and then just reuse one instance of ctup.