João Alves created CURATOR-648:
----------------------------------
Summary: CuratorFramework#blockUntilConnected does now wait
forever if waitTime <= 0
Key: CURATOR-648
URL: https://issues.apache.org/jira/browse/CURATOR-648
Project: Apache Curator
Issue Type: Bug
Reporter: João Alves
Assignee: Jordan Zimmerman
CuratorFramework#blockUntilConnected documentation remarks the following:
{noformat}
maxWaitTime - The maximum wait time. Specify a value <= 0 to wait
indefinitely{noformat}
This does not seem to be correct, if _maxWaitTime <= 0_ then
_blockUntilConnected_ returns immediately.
I am able to reproduce this behaviour locally and from the code it is apparent
to me that the cause is the logic in
{_}ConnectionStateManager#blockUntilConnected{_}:
{code:java}
boolean hasMaxWait = (units != null);{code}
Not sure what if the current behaviour is intended but I think misalignment
probably should be fixed to prevent unexpected behaviour.
What is the suggested fix here for this mismatch?
If the implementation is changed to wait indefinitely, would it make sense to
introduce a new method in _CuratorFramework_ to check the current curator
connection state without having to wait?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)