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/08/24 17:07:00 UTC

[jira] [Commented] (FLINK-7506) Fence JobMaster

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

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

GitHub user tillrohrmann opened a pull request:

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

    [FLINK-7506] Fence JobMaster

    ## What is the purpose of the change
    
    This commit lets the JobMaster extend from FencedRpcEndpoint. This enables
    automatic fencing of all messages. Moreover, this PR introduces the
    JobMasterId which is the new leader id/fencing token replacing the UUID. This
    improves type safety when passing multiple fencing tokens around.
    
    This PR is based on #4582 and #4579.
    
    ## Verifying this change
    
    This change is already covered by existing tests, such as `FencedRpcEndpointTest`.
    
    ## Does this pull request potentially affect one of the following parts:
    
      - Dependencies (does it add or upgrade a dependency): (no)
      - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: (no)
      - The serializers: (no)
      - The runtime per-record code paths (performance sensitive): (no)
      - Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
    
    ## Documentation
    
      - Does this pull request introduce a new feature? (no)
      - If yes, how is the feature documented? (not applicable)
    


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

    $ git pull https://github.com/tillrohrmann/flink fenceJobMaster

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

    https://github.com/apache/flink/pull/4583.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 #4583
    
----
commit de9caab30dec6357e8f936dc6a2e69fb70eee8ac
Author: Till Rohrmann <tr...@apache.org>
Date:   2017-08-22T14:33:05Z

    [FLINK-7489] Remove startJobExecution and suspendExecution from JobMasterGateway
    
    The job lifecycle methods should not be exposed as RPCs. Therefore, this commit
    removes them from the JobMasterGateway definition.

commit 69baec4df38cf5c0ab62c1813d50022d8277d79b
Author: Till Rohrmann <tr...@apache.org>
Date:   2017-08-23T15:08:55Z

    [FLINK-7078] [rpc] Introduce FencedRpcEndpoint
    
    Introduce FencedRpcEndpoint which requires all RPC messages to have a
    fencing token attached. Based on the received fencing token and the
    actual fencing token, the message will either be discarded if they are
    not equal or it will be processed. That way we are able to filter out
    old messages or messages which originate from a split brain situation
    
    Add support for callAsyncWithoutFencing

commit 85db81f5107a64ea187ded813f7a460eb648fe74
Author: Till Rohrmann <tr...@apache.org>
Date:   2017-08-24T11:24:15Z

    [FLINK-7500] Set JobMaster leader session id in main thread
    
    This commit changes the JobMaster such that it's leader session id is only set
    in the main thread. This is done by passing the leader session id to the
    startJobExecution method. Moreover, this commit returns a future from the
    start and suspend methods which can be used to wait on the completion of these
    operations.

commit a699cacd5acbaefe1f46d76be89c7407d6da15ec
Author: Till Rohrmann <tr...@apache.org>
Date:   2017-08-24T13:29:47Z

    [FLINK-7501] Generalize RegisteredRpcConnection to support generic leader ids
    
    The RegisteredRpcConnection now supports generic leader ids/fencing tokens. This
    will allow to introduce component specific leader ids/fencing tokens.

commit ad7701436a3ec240e6a9d15ee752a6c4d53e3b07
Author: Till Rohrmann <tr...@apache.org>
Date:   2017-08-24T13:11:00Z

    [FLINK-7504] Fence the ResourceManager
    
    Properly fences the ResourceManager by letting it extend the FencedRpcEndpoint.
    Moreover, this PR introduces a ResourceManagerId which replaces the UUID as
    leader id/fencing token. This will give us more type safety when defining rpc
    interfaces.

commit ffda44b3355906746fea10e24acedb9de1c170a4
Author: Till Rohrmann <tr...@apache.org>
Date:   2017-08-24T15:26:22Z

    [FLINK-7506] Fence JobMaster
    
    This commit lets the JobMaster extend from FencedRpcEndpoint. This enables
    automatic fencing of all messages. Moreover, this PR introduces the
    JobMasterId which is the new leader id/fencing token replacing the UUID. This
    improves type safety when passing multiple fencing tokens around.

----


> Fence JobMaster
> ---------------
>
>                 Key: FLINK-7506
>                 URL: https://issues.apache.org/jira/browse/FLINK-7506
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Distributed Coordination
>    Affects Versions: 1.4.0
>            Reporter: Till Rohrmann
>            Assignee: Till Rohrmann
>              Labels: flip-6
>
> With the completion of FLINK-7078, we should let the {{JobMaster}} extend the {{FencedRpcEndpoint}} in order for it to benefit from the automatic fencing.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)