curator-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergey Shelukhin (JIRA)" <>
Subject [jira] [Created] (CURATOR-415) SharedValue doesn't retry on session expiration and the approach to retries is not clear
Date Mon, 22 May 2017 18:31:04 GMT
Sergey Shelukhin created CURATOR-415:

             Summary: SharedValue doesn't retry on session expiration and the approach to
retries is not clear
                 Key: CURATOR-415
             Project: Apache Curator
          Issue Type: Bug
            Reporter: Sergey Shelukhin
            Assignee: Jordan Zimmerman

When the session expires, seemingly on a background thread, trying to set a shared value instantly
fails (in our logs there's no delay between the previous activity of the calling thread, and
the exception). Judging by the code in RetryLoop that is the default behavior.
Seems like there should be some mechanism to wait and/or retry. Also, in absence of such mechanism
it's not clear whether external retries should be used, or whether SharedValue object is entirely
unusable after session expiration (since if it were usable across sessions, one would assume
it would retry internally ;))

2017-05-17T21:33:33,863 ERROR [b99e518c-9777-4c99-b5e7-c9a371aba3af HiveServer2-Handler-Pool:
Thread-36331-EventThread]: imps.CuratorFrameworkImpl (
- Watcher exception
org.apache.zookeeper.KeeperException$SessionExpiredException: KeeperErrorCode = Session expired
for ...
Caused by: java.lang.RuntimeException: org.apache.zookeeper.KeeperException$SessionExpiredException:KeeperErrorCode
= Session expired for /zkdtsm_hive_llap0/ZKDTSMRoot/ZKDTSMSeqNumRoot
	at org.apache.zookeeper.KeeperException.create(
	at org.apache.zookeeper.KeeperException.create(
	at org.apache.zookeeper.ZooKeeper.setData(
	at org.apache.curator.framework.imps.SetDataBuilderImpl$
	at org.apache.curator.framework.imps.SetDataBuilderImpl$
	at org.apache.curator.RetryLoop.callWithRetry(
	at org.apache.curator.framework.imps.SetDataBuilderImpl.pathInForeground(
	at org.apache.curator.framework.imps.SetDataBuilderImpl.forPath(
	at org.apache.curator.framework.imps.SetDataBuilderImpl.forPath(

This message was sent by Atlassian JIRA

View raw message