curator-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shevek (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CURATOR-8) Possible mishandling of connection timeouts on large/shooty clusters
Date Fri, 29 Mar 2013 23:17:15 GMT

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

Shevek commented on CURATOR-8:
------------------------------

Issue made more complex by the fact that connection timeouts are handled within the ZooKeeper
instance and ZK does not give a signal to the outer framework when it's exhausted its Host
loop.

Issue made simpler by the fact that we can redeliver a changed Host set to the ZooKeeper instance
whenever the Ensemble says so, and other than doing that, there's nothing we can usefully
(functionally) do when the Host loop _is_ exhausted except perhaps tell the user application.
                
> Possible mishandling of connection timeouts on large/shooty clusters
> --------------------------------------------------------------------
>
>                 Key: CURATOR-8
>                 URL: https://issues.apache.org/jira/browse/CURATOR-8
>             Project: Apache Curator
>          Issue Type: Bug
>          Components: Client
>            Reporter: Shevek
>            Assignee: Jordan Zimmerman
>
> See CURATOR-7 for background.
> ConnectionState.checkTimeouts resets the connection if the session timeout has expired,
whether or not we ever had a session. If one has a large, shooty cluster with a short session
timeout and a long connection timeout, this might reset the host list pointer to zero every
sessionTimeoutMs, never letting it connect to a valid, available host towards the end of the
list. On the other hand, if it is an assertion that sessionTimeout > connectionTimeout
always, then the min() call is not required and the ifelse should read "else if (elapsed >
connectionTimeoutMs)" instead of just "else". 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message