[ 
https://issues.apache.org/jira/browse/BEAM-169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17132177#comment-17132177
 ] 

Beam JIRA Bot commented on BEAM-169:
------------------------------------

This issue is P2 but has been unassigned without any comment for 60 days so it 
has been labeled "stale-P2". If this issue is still affecting you, we care! 
Please comment and remove the label. Otherwise, in 14 days the issue will be 
moved to P3.

Please see https://beam.apache.org/contribute/jira-priorities/ for a detailed 
explanation of what these priorities mean.


> Need serialized form and serialVersionUID for user-facing superclasses
> ----------------------------------------------------------------------
>
>                 Key: BEAM-169
>                 URL: https://issues.apache.org/jira/browse/BEAM-169
>             Project: Beam
>          Issue Type: Bug
>          Components: sdk-java-core
>            Reporter: Kenneth Knowles
>            Priority: P2
>              Labels: serialization, stale-P2
>
> When a class does not have an explicit {{serialVersionUID}}, it should be 
> considered an unstable value based on the exact version of the code. This is 
> fine for transmission most of the time, but never acceptable for persistence 
> where backwards compatibility matters.
> There are two use cases that require explicit serialized form and 
> {{serialVersionUID}} even just for transmission. They are required for 
> user-facing superclasses such as DoFn, WindowFn, etc, to support the 
> following:
> # Encoding a pipeline with a JDK and decoding with a JDK that computes 
> defaults differently.
> # Encoding a pipeline against a version of the Beam SDK and decoding with a 
> different version.
> The first situation should be rare since there is a deterministic spec, but 
> we have unfortunately seen it.
> The second situation is very reasonable; a runner might want to run with 
> additional security fixes in the SDK, etc. Given a correct semantic version 
> for the SDK, the pipeline author and runner author may reasonably expect it 
> to work.
> So we should add explicit serialization to superclasses that are necessarily 
> encoded as part of a user's pipeline.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to