accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Johannes Bauer (JIRA)" <>
Subject [jira] [Updated] (ACCUMULO-3313) Zookeeper does not start because of classpath.
Date Fri, 07 Nov 2014 13:08:33 GMT


Johannes Bauer updated ACCUMULO-3313:
    Summary: Zookeeper does not start because of classpath.  (was: Classpath for starting
zookeper is almost empty)

> Zookeeper does not start because of classpath.
> ----------------------------------------------
>                 Key: ACCUMULO-3313
>                 URL:
>             Project: Accumulo
>          Issue Type: Bug
>          Components: mini
>         Environment: Windows
> Hadoop 2.5.0cdh5.2.0
> Accumulo 1.6.0cdh5.1.0
>            Reporter: Johannes Bauer
>         Attachments: screenshot-1.png
> When I run the MiniAccumuloCluster 1.6.0 on Windows, it does not start up correctly,
but ends up with the error
> {code}
> java.lang.RuntimeException: Zookeeper did not start within 20 seconds. Check the logs
in C:\Users\jsbaue\AppData\Local\Temp\1415364318664-0\logs for errors.  Last exception:
Connection refused: connect
> 	at org.apache.accumulo.minicluster.impl.MiniAccumuloClusterImpl.start(
> 	at org.apache.accumulo.minicluster.MiniAccumuloCluster.start(
> 	at com.gfk.st2.pace.datafactory.adaptor.accumulo.impl.MiniAccumuloClusterTest.testStart(
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(
> {code}
> Reason is, that Zookeeper does not startup at all, as the classpath, returned by the
> {code}
> private String getClasspath() throws IOException
> {code}
> in returns a classpath, containing just the config directory.
The reason for this is the part 
> {code}
>         // assume 0 is the system classloader and skip it
>         for (int i = 1; i < classloaders.size(); i++) {
> {code}
> (Line 208f in 1.6.0, 224f in 1.6.1), my debug-situation can be seen in screenshot-1.png.
There you also can see, that the list {{classloaders}} includes only one classloader, which
is a {{}}. This classloader does not have a parent. Subsequently, the
list has only one element, and the {{for}}-loop is never entered. So the classpath does not
even contain the {{class org.apache.zookeeper.server.ZooKeeperServerMain}}, so Zeekeeper cannot
be started. 
> When I start the loop with 0, zookeeper starts up and I can use the MiniAccumuloCluster.

This message was sent by Atlassian JIRA

View raw message