beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (BEAM-2021) Fix Java's Coder class hierarchy
Date Mon, 24 Apr 2017 22:51:04 GMT

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

ASF GitHub Bot commented on BEAM-2021:
--------------------------------------

GitHub user tgroh opened a pull request:

    https://github.com/apache/beam/pull/2668

    [BEAM-2021] Make Most StandardCoders CustomCoders

    Be sure to do all of the following to help us incorporate your contribution
    quickly and easily:
    
     - [ ] Make sure the PR title is formatted like:
       `[BEAM-<Jira issue #>] Description of pull request`
     - [ ] Make sure tests pass via `mvn clean verify`. (Even better, enable
           Travis-CI on your fork and ensure the whole test matrix passes).
     - [ ] Replace `<Jira issue #>` in the title with the actual Jira issue
           number, if there is one.
     - [ ] If this contribution is large, please file an Apache
           [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
    
    ---
    Standard Coders have a defined serialization format and are understood
    within the Runner API, Custom Coders are not. Move existing
    "StandardCoders" to extend CustomCoder, and remove custom cloud object
    related serialization logic where possible.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/tgroh/beam fewer_standard_coders

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/beam/pull/2668.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #2668
    
----
commit 77f416ec28233fd4cae676c604334295ae30a082
Author: Thomas Groh <tgroh@google.com>
Date:   2017-04-20T16:39:12Z

    Stop Extending AtomicCoder

commit 6fc50b2bb7e0416bb04b93595248175020185107
Author: Thomas Groh <tgroh@google.com>
Date:   2017-04-22T00:58:51Z

    Make Most StandardCoders CustomCoders
    
    Standard Coders have a defined serialization format and are understood
    within the Runner API, Custom Coders are not. Move existing
    "StandardCoders" to extend CustomCoder, and remove custom cloud object
    related serialization logic where possible.

----


> Fix Java's Coder class hierarchy
> --------------------------------
>
>                 Key: BEAM-2021
>                 URL: https://issues.apache.org/jira/browse/BEAM-2021
>             Project: Beam
>          Issue Type: Improvement
>          Components: beam-model-runner-api, sdk-java-core
>    Affects Versions: First stable release
>            Reporter: Kenneth Knowles
>            Assignee: Thomas Groh
>             Fix For: First stable release
>
>
> This is thoroughly out of hand. In the runner API world, there are two paths:
> 1. URN plus component coders plus custom payload (in the form of component coders alongside
an SdkFunctionSpec)
> 2. Custom coder (a single URN) and payload is serialized Java. I think this never has
component coders.
> The other base classes have now been shown to be extraneous: they favor saving ~3 lines
of boilerplate for rarely written code at the cost of readability. Instead they should just
be dropped.
> The custom payload is an Any proto in the runner API. But tying the Coder interface to
proto would be unfortunate from a design perspective and cannot be done anyhow due to dependency
hell.



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

Mime
View raw message