Dan Milon created ZOOKEEPER-2960:
------------------------------------

             Summary: The dataDir and dataLogDir are used opposingly
                 Key: ZOOKEEPER-2960
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2960
             Project: ZooKeeper
          Issue Type: Bug
          Components: server
    Affects Versions: 3.4.11
         Environment: Not relevant.
            Reporter: Dan Milon
            Priority: Critical


After upgrading from zookeeper 3.4.5, to 3.4.11, without editing {{zoo.cfg}}, 
the new version of the server tries to use the {{dataDir}} as the 
{{dataLogDir}}, and the {{dataLogDir}} as the {{dataDir}}. Or at least some 
parts of the server.

Configuration file has:
{noformat}
$ grep -i data /etc/zookeeper/zoo.cfg 
dataLogDir=/var/lib/zookeeper/datalog
dataDir=/var/lib/zookeeper/data
{noformat}

But runtime configuration has:
{noformat}
$ echo conf | nc localhost 2181 | grep -i data
dataDir=/var/lib/zookeeper/datalog/version-2
dataLogDir=/var/lib/zookeeper/data/version-2
{noformat}

Also, I got this in the debug logs, so clearly some parts of the server confuse 
things.

{noformat}
[PurgeTask:FileTxnSnapLog@79] - Opening datadir:/var/lib/zookeeper/datalog 
snapDir:/var/lib/zookeeper/data
[main:FileTxnSnapLog@79] - Opening datadir:/var/lib/zookeeper/data 
snapDir:/var/lib/zookeeper/datalog
{noformat}

I tried to look in the code for wrong uses of the directories. I only found 
[ZookeeperServer.java|https://github.com/apache/zookeeper/blob/master/src/java/main/org/apache/zookeeper/server/ZooKeeperServer.java#L227]
 is passing the arguments in the wrong order, but the code comment says that 
this is legacy only for tests, so I assume it isn't the cause for my case.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to