You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Takashi Ohnishi (JIRA)" <ji...@apache.org> on 2013/10/04 03:19:44 UTC

[jira] [Created] (ZOOKEEPER-1781) ZooKeeper Server fails if snapCount is set to 1

Takashi Ohnishi created ZOOKEEPER-1781:
------------------------------------------

             Summary: ZooKeeper Server fails if snapCount is set to 1 
                 Key: ZOOKEEPER-1781
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1781
             Project: ZooKeeper
          Issue Type: Bug
          Components: quorum
    Affects Versions: 3.4.5
            Reporter: Takashi Ohnishi
            Priority: Minor


If snapCount is set to 1, ZooKeeper Server can start but it fails with the below error:

2013-10-02 18:09:07,600 [myid:1] - ERROR [SyncThread:1:SyncRequestProcessor@151] - Severe unrecoverable error, exiting
java.lang.IllegalArgumentException: n must be positive
        at java.util.Random.nextInt(Random.java:300)
        at
org.apache.zookeeper.server.SyncRequestProcessor.run(SyncRequestProcessor.ja
va:93)

In source code,  it maybe be supposed that snapCount must be 2 or more:
     91             // we do this in an attempt to ensure that not all of
the servers
     92             // in the ensemble take a snapshot at the same time
     93             int randRoll = r.nextInt(snapCount/2);

I think this supposition is not bad because snapCount = 1 is not realistic setting...
But, it may be better to mention this restriction in documentation or add a validation in the source code.



--
This message was sent by Atlassian JIRA
(v6.1#6144)