OK, found it: it looks like I have to individually get() the PCollections from 
the PCollectionTuple, and set the coders on each of them.
Still, a setCoder() method seems more intuitive...and I see that in 
ParDo.MultiOutput.expand() there's a nice TODO above an empty map that should 
be a map of Coders...

From: Kelsey RIDER <[email protected]>
Sent: lundi 27 août 2018 09:39
To: [email protected]
Subject: setCoder() with ParDo.MultiOutput

When using a ParDo transform that produces a single output, I can call 
setCoder() on the resulting PCollection.

However, if the ParDo creates a PCollectionTuple (due to withOutputTags()), 
there is no way (that I've found) to set the Coder(s) for the resulting output. 
My pipeline then throws an exception because it needs a Coder for the output 
types.

Would it make sense to have a method on PCollectionTuple.setCoder(TupleTag tag, 
Coder coder) so that different coders can be set for the different types of 
output?
Suite à l'évolution des dispositifs de réglementation du travail, si vous 
recevez ce mail avant 7h00, en soirée, durant le week-end ou vos congés merci, 
sauf cas d'urgence exceptionnelle, de ne pas le traiter ni d'y répondre 
immédiatement.

Reply via email to