You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Maximilian Michels (JIRA)" <ji...@apache.org> on 2018/11/20 14:05:00 UTC

[jira] [Resolved] (BEAM-6055) CoderTypeSerializer#duplicate() should create a deep copy of the coder

     [ https://issues.apache.org/jira/browse/BEAM-6055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Maximilian Michels resolved BEAM-6055.
--------------------------------------
       Resolution: Not A Problem
    Fix Version/s: Not applicable

Closing and moving the Flink issue to Beam.

> CoderTypeSerializer#duplicate() should create a deep copy of the coder
> ----------------------------------------------------------------------
>
>                 Key: BEAM-6055
>                 URL: https://issues.apache.org/jira/browse/BEAM-6055
>             Project: Beam
>          Issue Type: Bug
>          Components: runner-flink
>    Affects Versions: 2.8.0
>            Reporter: Stefan Richter
>            Priority: Critical
>             Fix For: Not applicable
>
>
> I think that {{CoderTypeSerializer#duplicate()}} must make a deep copy of the {{coder}} field here https://github.com/apache/beam/blob/f2f0b02babf745d0d9645e0526637ef967dd2228/runners/flink/src/main/java/org/apache/beam/runners/flink/translation/types/CoderTypeSerializer.java#L53. It seems to me like the {{coder}} objects can be stateful and the current implementation will share them across multiple serializer instance. Different serializer instances can be used by different threads in Flink and as a whole, this can lead to concurrency problems and corruption like in this example: https://issues.apache.org/jira/browse/FLINK-10860



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)