[
https://issues.apache.org/jira/browse/ZOOKEEPER-776?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gregory Haskins updated ZOOKEEPER-776:
--------------------------------------
Status: Patch Available (was: Open)
commit 840f56d388582e1df39f7513aa7f4d4ce0610718
Author: Gregory Haskins <[email protected]>
Date: Fri May 21 14:58:14 2010 -0400
javaclient: validate sessionTimeout field at ZooKeeper init
JIRA ZOOKEEPER-776 describes the following problem:
passing in a "0" sessionTimeout to ZooKeeper() constructor leads to errors
in subsequent operations. It would be ideal to capture this configuration
error at the source by throwing something like an IllegalArgument exception
when the bogus sessionTimeout is specified, instead of later when it is
utilized.
This patch is a proposal to fix the problem referenced above.
Signed-off-by: Gregory Haskins <[email protected]>
diff --git a/src/java/main/org/apache/zookeeper/ClientCnxn.java b/src/java/main/
index 8eb227d..682811b 100644
--- a/src/java/main/org/apache/zookeeper/ClientCnxn.java
+++ b/src/java/main/org/apache/zookeeper/ClientCnxn.java
@@ -353,6 +353,11 @@ public class ClientCnxn {
this.sessionId = sessionId;
this.sessionPasswd = sessionPasswd;
+ if (sessionTimeout <= 0) {
+ throw new IOException("sessionTimeout " + sessionTimeout
+ + " is not valid");
+ }
+
// parse out chroot, if any
int off = hosts.indexOf('/');
if (off >= 0) {
> API should sanity check sessionTimeout argument
> -----------------------------------------------
>
> Key: ZOOKEEPER-776
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-776
> Project: Zookeeper
> Issue Type: Improvement
> Components: c client, java client
> Affects Versions: 3.3.1, 3.3.0, 3.2.2
> Environment: OSX 10.6.3, JVM 1.6.0-20
> Reporter: Gregory Haskins
> Priority: Minor
> Fix For: 3.4.0
>
>
> passing in a "0" sessionTimeout to ZooKeeper() constructor leads to errors in
> subsequent operations. It would be ideal to capture this configuration error
> at the source by throwing something like an IllegalArgument exception when
> the bogus sessionTimeout is specified, instead of later when it is utilized.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.