You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@samza.apache.org by "Navina Ramesh (JIRA)" <ji...@apache.org> on 2017/07/17 22:58:00 UTC

[jira] [Resolved] (SAMZA-1336) session expiration propagation

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

Navina Ramesh resolved SAMZA-1336.
----------------------------------
       Resolution: Fixed
    Fix Version/s:     (was: 0.13.0)

Issue resolved by pull request 229
[https://github.com/apache/samza/pull/229]

> session expiration propagation 
> -------------------------------
>
>                 Key: SAMZA-1336
>                 URL: https://issues.apache.org/jira/browse/SAMZA-1336
>             Project: Samza
>          Issue Type: Sub-task
>            Reporter: Boris Shkolnik
>            Assignee: Boris Shkolnik
>             Fix For: 0.13.1
>
>
> If ZK doesn't receive any communication from a zkClient (including heartbeats) for a session timeout period, it closes the session with the client. It removes all the ephemeral nodes associated with the client. That's why we need to restore all these nodes - need to re-register. 
> We are using ZkClient library to connect to zookeeper. This library allows us to get notification when the session is closed and when a new session is created. So when the new session is created we reset all session related state and re-register.
> One weird feature of the library/zookeeper is that when a new session is established, it is still possible to receive old notifications. To avoid this we introduce generation number which we pass into each callback. And if the generation number has changed when the callback was invoked, we will ignore this callback.



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