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 2018/05/15 10:47:00 UTC

[jira] [Commented] (FLINK-9365) Add version information to remote rpc messages

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

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

GitHub user tillrohrmann opened a pull request:

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

    [FLINK-9365] [rpc] Add handshake procedure to AkkaRpcService when connecting

    ## What is the purpose of the change
    
    The handshake procedure sends the source version and the target rpc gateway type
    to the rpc endpoint. This information is used to validate whether the version is
    compatible and whether the rpc endpoint supports the target gateway type.
    
    ## Brief change log
    
    - Introduce a `RemoteHandshakeMessage` which contains the version information as well as the target gateway type
    - Send handshake message after obtaining the `ActorRef` of the `AkkaRpcActor`
    - Verify compatibility (version and gateway type) on the `AkkaRpcActor` and confirm with `HandshakeSuccessMessage`
    
    ## Verifying this change
    
    - Added `AkkaRpcActorHandshakeTest`
    
    ## 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: (yes)
      - The S3 file system connector: (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 addRpcVersion

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

    https://github.com/apache/flink/pull/6017.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 #6017
    
----
commit 5fa646f5d89840a7e6376017584773a6fdcbdc35
Author: Till Rohrmann <tr...@...>
Date:   2018-05-14T21:57:01Z

    [hotfix] Add JobMasterTest#testSlotRequestTimeoutWhenNoSlotOffering
    
    The JobMasterTest#testSlotRequestTimeoutWhenNoSlotOffering verifies that the JM
    will retry a job scheduling if one of its TMs does not properly offer a slot. The
    mechanism which triggers this behaviour is the slot request timeout which fails the
    ongoing scheduling operation if the slot requests are not fulfilled.

commit b9427e6b54d57b55ce8c43ec1bc320114b113134
Author: Till Rohrmann <tr...@...>
Date:   2018-05-15T08:41:15Z

    [hotfix] Resolve compiler warnings in AkkaRpcService

commit 63bbc9738ed4e91d1d1ecae755de48590275263e
Author: Till Rohrmann <tr...@...>
Date:   2018-05-15T08:55:04Z

    [FLINK-9365] [rpc] Add handshake procedure to AkkaRpcService when connecting
    
    The handshake procedure sends the source version and the target rpc gateway type
    to the rpc endpoint. This information is used to validate whether the version is
    compatible and whether the rpc endpoint supports the target gateway type.

----


> Add version information to remote rpc messages
> ----------------------------------------------
>
>                 Key: FLINK-9365
>                 URL: https://issues.apache.org/jira/browse/FLINK-9365
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Distributed Coordination
>    Affects Versions: 1.5.0, 1.6.0
>            Reporter: Till Rohrmann
>            Assignee: Till Rohrmann
>            Priority: Major
>              Labels: flip-6
>             Fix For: 1.5.0
>
>
> In order to quickly detect components which use incompatible RPC versions, we should add a version information to all remote RPC messages. That way we could easily detect if an older incompatible component tries to communicate with a newer version.



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