[
https://issues.apache.org/jira/browse/CURATOR-247?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14724553#comment-14724553
]
ASF GitHub Bot commented on CURATOR-247:
----------------------------------------
Github user cammckenzie commented on a diff in the pull request:
https://github.com/apache/curator/pull/97#discussion_r38378657
--- Diff:
curator-framework/src/main/java/org/apache/curator/framework/imps/CuratorFrameworkImpl.java
---
@@ -103,23 +106,34 @@
public CuratorFrameworkImpl(CuratorFrameworkFactory.Builder builder)
{
ZookeeperFactory localZookeeperFactory =
makeZookeeperFactory(builder.getZookeeperFactory());
- this.client = new CuratorZookeeperClient(localZookeeperFactory,
builder.getEnsembleProvider(), builder.getSessionTimeoutMs(),
builder.getConnectionTimeoutMs(), new Watcher()
- {
- @Override
- public void process(WatchedEvent watchedEvent)
- {
- CuratorEvent event = new
CuratorEventImpl(CuratorFrameworkImpl.this, CuratorEventType.WATCHED,
watchedEvent.getState().getIntValue(),
unfixForNamespace(watchedEvent.getPath()), null, null, null, null, null,
watchedEvent, null, null);
- processEvent(event);
- }
- }, builder.getRetryPolicy(), builder.canBeReadOnly());
+ this.client = new CuratorZookeeperClient
+ (
+ localZookeeperFactory,
+ builder.getEnsembleProvider(),
+ builder.getSessionTimeoutMs(),
+ builder.getConnectionTimeoutMs(),
+ new Watcher()
+ {
+ @Override
+ public void process(WatchedEvent watchedEvent)
+ {
+ CuratorEvent event = new
CuratorEventImpl(CuratorFrameworkImpl.this, CuratorEventType.WATCHED,
watchedEvent.getState().getIntValue(),
unfixForNamespace(watchedEvent.getPath()), null, null, null, null, null,
watchedEvent, null, null);
+ processEvent(event);
+ }
+ },
+ builder.getRetryPolicy(),
+ builder.canBeReadOnly(),
+ builder.getConnectionHandlingPolicy()
+ );
+ internalConnectionHandler =
builder.getConnectionHandlingPolicy().isEmulatingClassicHandling() ? new
ClassicInternalConnectionHandler() : new StandardInternalConnectionHandler();
--- End diff --
Is there a reason that this needs to be a separate instance rather than
just a reference to the connection handler from the builder?
> Extend Curator's connection state to support SESSION_LOST
> ---------------------------------------------------------
>
> Key: CURATOR-247
> URL: https://issues.apache.org/jira/browse/CURATOR-247
> Project: Apache Curator
> Issue Type: Sub-task
> Components: Framework
> Affects Versions: 2.8.0
> Reporter: Jordan Zimmerman
> Assignee: Jordan Zimmerman
> Fix For: 3.0.0
>
>
> Currently, Curator has a connection state for LOST that confuses users. It
> does _not_ mean that the session is lost. Instead it means that the retry
> policy has given up retrying. Introduce a new connection state that roughly
> corresponds to the ZooKeeper session expiring. Possibly require that clients
> request this support via a new new builder method in CuratorFrameworkFactory
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)