Fix excessive garbage creation

The ORC decoder was generating a large amount of garbage because it was
invoking a varargs function in the inner decoding loop. This reduces
object creation by about 80% on the workers