Eugene Kirpichov created BEAM-1820:
--------------------------------------

             Summary: Source.getDefaultOutputCoder() should be @Nullable
                 Key: BEAM-1820
                 URL: https://issues.apache.org/jira/browse/BEAM-1820
             Project: Beam
          Issue Type: Improvement
          Components: sdk-java-core
            Reporter: Eugene Kirpichov
            Assignee: Davor Bonaci


Source.getDefaultOutputCoder() returns a coder for elements produced by the 
source.

However, the Source objects are nearly always hidden from the user and instead 
encapsulated in a transform. Often, an enclosing transform has a better idea of 
what coder should be used to encode these elements (e.g. a user supplied a 
Coder to that transform's configuration). In that case, it'd be good if 
Source.getDefaultOutputCoder() could just return null, and coder would have to 
be handled by the enclosing transform or perhaps specified on the output of 
that transform explicitly.

Right now there's a bunch of code in the SDK and runners that assumes 
Source.getDefaultOutputCoder() returns non-null. That code would need to be 
fixed to instead use the coder set on the collection produced by 
Read.from(source).

It all appears pretty easy to fix, so this is a good starter item.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to