You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/01/25 15:15:26 UTC

[jira] [Commented] (FLINK-5628) CheckpointStatsTracker implements Serializable but isn't

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

ASF GitHub Bot commented on FLINK-5628:
---------------------------------------

GitHub user uce opened a pull request:

    https://github.com/apache/flink/pull/3215

    [FLINK-5628] [webfrontend] Fix serialization of stats tracker

    Instead of exposing the stats tracker in `AccessExecutionGraph`, we expose the checkpoint stats snapshot. That way, we don't have to worry about serializibility in the tracker itself. The archived execution graph simply gets the latest snapshot before archival. With this change, we also prevent illegal use of the tracker after it has been archived.
    
    Not strictly necessary for 1.2 but nice to have in order to have an easier time when backporting stuff from 1.3 later.

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

    $ git pull https://github.com/uce/flink serialize

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

    https://github.com/apache/flink/pull/3215.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 #3215
    
----
commit 4edc2169d70a90cc8e50462a684c5593ae0b0eb3
Author: Ufuk Celebi <uc...@apache.org>
Date:   2017-01-25T14:42:24Z

    [FLINK-5628] [webfrontend] Return snapshot instead of tracker

commit fc99a5ed096848c9794e8be9928ac5ad3f8027f0
Author: Ufuk Celebi <uc...@apache.org>
Date:   2017-01-25T14:43:18Z

    [FLINK-5628] [webfrontend] Fix serializability of checkpoint stats tracker

----


> CheckpointStatsTracker implements Serializable but isn't
> --------------------------------------------------------
>
>                 Key: FLINK-5628
>                 URL: https://issues.apache.org/jira/browse/FLINK-5628
>             Project: Flink
>          Issue Type: Bug
>          Components: Local Runtime
>    Affects Versions: 1.2.0, 1.3.0
>            Reporter: Chesnay Schepler
>            Assignee: Ufuk Celebi
>            Priority: Blocker
>             Fix For: 1.3.0
>
>
> The CheckpointStatsTracker implements the Serializable interface, even though it no longer is serializable as it contains a List<ExecutionJobVertex>.
> This was introduced in 579bc96446d598a2cfe8237b4ebd62d8c9df3483 which reworked the checkpoint stats tracking,
> This does not affect 1.2 or 1.3 in any way (since these objects aren't serialized there), but it blocks the implementation of the HistoryServer.
> The AccessExecution*/ArchivedExecution* classes, which are supposed to be a serializable form of the ExecutionGraph, are thus broken as they also make use of the CheckpointStatsTracker.
> (Note: * = Graph/ExecutionJobVertex/ExecutionVertex/Execution) .
> This wasn't catched in tests since no ExecutionJobVertices were given to the CheckpointStatsTracker in ArchivedExecutionGraphTest#setExecutionGraph.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)