You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by an...@apache.org on 2018/10/19 12:40:34 UTC

[36/51] [partial] zookeeper git commit: ZOOKEEPER-3032: MAVEN MIGRATION - zookeeper-server

http://git-wip-us.apache.org/repos/asf/zookeeper/blob/cb9f303b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ChrootTest.java
----------------------------------------------------------------------
diff --git a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ChrootTest.java b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ChrootTest.java
deleted file mode 100644
index d65ed8d..0000000
--- a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ChrootTest.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.zookeeper.test;
-
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-import org.apache.zookeeper.CreateMode;
-import org.apache.zookeeper.KeeperException;
-import org.apache.zookeeper.WatchedEvent;
-import org.apache.zookeeper.Watcher;
-import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.ZooDefs.Ids;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class ChrootTest extends ClientBase {
-    private static class MyWatcher implements Watcher {
-        private final String path;
-        private String eventPath;
-        private CountDownLatch latch = new CountDownLatch(1);
-
-        public MyWatcher(String path) {
-            this.path = path;
-        }
-        public void process(WatchedEvent event) {
-            System.out.println("latch:" + path + " " + event.getPath());
-            this.eventPath = event.getPath();
-            latch.countDown();
-        }
-        public boolean matches() throws InterruptedException {
-            if (!latch.await(CONNECTION_TIMEOUT, TimeUnit.MILLISECONDS)) {
-                Assert.fail("No watch received within timeout period " + path);
-            }
-            return path.equals(eventPath);
-        }
-    }
-
-    @Test
-    public void testChrootSynchronous()
-        throws IOException, InterruptedException, KeeperException
-    {
-        ZooKeeper zk1 = createClient();
-        try {
-            zk1.create("/ch1", null, Ids.OPEN_ACL_UNSAFE,
-                    CreateMode.PERSISTENT);
-        } finally {
-            if(zk1 != null)
-                zk1.close();
-        }
-        ZooKeeper zk2 = createClient(hostPort + "/ch1");
-        try {
-            Assert.assertEquals("/ch2",
-                    zk2.create("/ch2", null, Ids.OPEN_ACL_UNSAFE,
-                            CreateMode.PERSISTENT));
-        } finally {
-            if(zk2 != null)
-                zk2.close();
-        }
-
-        zk1 = createClient();
-        zk2 = createClient(hostPort + "/ch1");
-        try {
-            // check get
-            MyWatcher w1 = new MyWatcher("/ch1");
-            Assert.assertNotNull(zk1.exists("/ch1", w1));
-            MyWatcher w2 = new MyWatcher("/ch1/ch2");
-            Assert.assertNotNull(zk1.exists("/ch1/ch2", w2));
-
-            MyWatcher w3 = new MyWatcher("/ch2");
-            Assert.assertNotNull(zk2.exists("/ch2", w3));
-
-            // set watches on child
-            MyWatcher w4 = new MyWatcher("/ch1");
-            zk1.getChildren("/ch1",w4);
-            MyWatcher w5 = new MyWatcher("/");
-            zk2.getChildren("/",w5);
-
-            // check set
-            zk1.setData("/ch1", "1".getBytes(), -1);
-            zk2.setData("/ch2", "2".getBytes(), -1);
-
-            // check watches
-            Assert.assertTrue(w1.matches());
-            Assert.assertTrue(w2.matches());
-            Assert.assertTrue(w3.matches());
-
-            // check exceptions
-            try {
-                zk2.setData("/ch3", "3".getBytes(), -1);
-            } catch (KeeperException.NoNodeException e) {
-                Assert.assertEquals("/ch3", e.getPath());
-            }
-
-            Assert.assertTrue(Arrays.equals("1".getBytes(),
-                    zk1.getData("/ch1", false, null)));
-            Assert.assertTrue(Arrays.equals("2".getBytes(),
-                    zk1.getData("/ch1/ch2", false, null)));
-            Assert.assertTrue(Arrays.equals("2".getBytes(),
-                    zk2.getData("/ch2", false, null)));
-
-            // check delete
-            zk2.delete("/ch2", -1);
-            Assert.assertTrue(w4.matches());
-            Assert.assertTrue(w5.matches());
-
-            zk1.delete("/ch1", -1);
-            Assert.assertNull(zk1.exists("/ch1", false));
-            Assert.assertNull(zk1.exists("/ch1/ch2", false));
-            Assert.assertNull(zk2.exists("/ch2", false));
-        } finally {
-            if(zk1 != null)
-                zk1.close();
-            if(zk2 != null)
-                zk2.close();
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/zookeeper/blob/cb9f303b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientBase.java
----------------------------------------------------------------------
diff --git a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientBase.java b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientBase.java
deleted file mode 100644
index 4cb42ed..0000000
--- a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientBase.java
+++ /dev/null
@@ -1,779 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.zookeeper.test;
-
-import static org.apache.zookeeper.client.FourLetterWordMain.send4LetterWord;
-
-import java.io.BufferedInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.net.ConnectException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;
-
-import javax.management.MBeanServerConnection;
-import javax.management.ObjectName;
-
-
-import org.apache.zookeeper.common.Time;
-import org.apache.zookeeper.common.X509Exception.SSLContextException;
-import org.apache.zookeeper.KeeperException;
-import org.apache.zookeeper.PortAssignment;
-import org.apache.zookeeper.TestableZooKeeper;
-import org.apache.zookeeper.WatchedEvent;
-import org.apache.zookeeper.Watcher;
-import org.apache.zookeeper.Watcher.Event.KeeperState;
-import org.apache.zookeeper.ZKTestCase;
-import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.common.IOUtils;
-import org.apache.zookeeper.server.ServerCnxnFactory;
-import org.apache.zookeeper.server.ServerCnxnFactoryAccessor;
-import org.apache.zookeeper.server.ZKDatabase;
-import org.apache.zookeeper.server.ZooKeeperServer;
-import org.apache.zookeeper.server.persistence.FilePadding;
-import org.apache.zookeeper.server.persistence.FileTxnLog;
-import org.apache.zookeeper.server.quorum.QuorumPeer;
-import org.apache.zookeeper.server.util.OSMXBean;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public abstract class ClientBase extends ZKTestCase {
-    protected static final Logger LOG = LoggerFactory.getLogger(ClientBase.class);
-
-    public static int CONNECTION_TIMEOUT = 30000;
-    static final File BASETEST =
-        new File(System.getProperty("build.test.dir", "build"));
-
-    protected String hostPort = "127.0.0.1:" + PortAssignment.unique();
-    protected int maxCnxns = 0;
-    protected ServerCnxnFactory serverFactory = null;
-    protected File tmpDir = null;
-
-    long initialFdCount;
-
-    public ClientBase() {
-        super();
-    }
-
-    /**
-     * In general don't use this. Only use in the special case that you
-     * want to ignore results (for whatever reason) in your test. Don't
-     * use empty watchers in real code!
-     *
-     */
-    protected static class NullWatcher implements Watcher {
-        public void process(WatchedEvent event) { /* nada */ }
-    }
-
-    public static class CountdownWatcher implements Watcher {
-        // XXX this doesn't need to be volatile! (Should probably be final)
-        volatile CountDownLatch clientConnected;
-        // Set to true when connected to a read-only server, or a read-write (quorum) server.
-        volatile boolean connected;
-        // Set to true when connected to a quorum server.
-        volatile boolean syncConnected;
-        // Set to true when connected to a quorum server in read-only mode
-        volatile boolean readOnlyConnected;
-
-        public CountdownWatcher() {
-            reset();
-        }
-        synchronized public void reset() {
-            clientConnected = new CountDownLatch(1);
-            connected = false;
-            syncConnected = false;
-            readOnlyConnected = false;
-        }
-        synchronized public void process(WatchedEvent event) {
-            KeeperState state = event.getState();
-            if (state == KeeperState.SyncConnected) {
-                connected = true;
-                syncConnected = true;
-                readOnlyConnected = false;
-            } else if (state == KeeperState.ConnectedReadOnly) {
-                connected = true;
-                syncConnected = false;
-                readOnlyConnected = true;
-            } else {
-                connected = false;
-                syncConnected = false;
-                readOnlyConnected = false;
-            }
-
-            notifyAll();
-            if (connected) {
-                clientConnected.countDown();
-            }
-        }
-        synchronized public boolean isConnected() {
-            return connected;
-        }
-        synchronized public void waitForConnected(long timeout)
-            throws InterruptedException, TimeoutException
-        {
-            long expire = Time.currentElapsedTime() + timeout;
-            long left = timeout;
-            while(!connected && left > 0) {
-                wait(left);
-                left = expire - Time.currentElapsedTime();
-            }
-            if (!connected) {
-                throw new TimeoutException("Failed to connect to ZooKeeper server.");
-
-            }
-        }
-        synchronized public void waitForSyncConnected(long timeout)
-                throws InterruptedException, TimeoutException
-        {
-            long expire = Time.currentElapsedTime() + timeout;
-            long left = timeout;
-            while(!syncConnected && left > 0) {
-                wait(left);
-                left = expire - Time.currentElapsedTime();
-            }
-            if (!syncConnected) {
-                throw new TimeoutException("Failed to connect to read-write ZooKeeper server.");
-            }
-        }
-        synchronized public void waitForReadOnlyConnected(long timeout)
-                throws InterruptedException, TimeoutException
-        {
-            long expire = System.currentTimeMillis() + timeout;
-            long left = timeout;
-            while(!readOnlyConnected && left > 0) {
-                wait(left);
-                left = expire - System.currentTimeMillis();
-            }
-            if (!readOnlyConnected) {
-                throw new TimeoutException("Failed to connect in read-only mode to ZooKeeper server.");
-            }
-        }
-        synchronized public void waitForDisconnected(long timeout)
-            throws InterruptedException, TimeoutException
-        {
-            long expire = Time.currentElapsedTime() + timeout;
-            long left = timeout;
-            while(connected && left > 0) {
-                wait(left);
-                left = expire - Time.currentElapsedTime();
-            }
-            if (connected) {
-                throw new TimeoutException("Did not disconnect");
-
-            }
-        }
-    }
-
-    protected TestableZooKeeper createClient()
-        throws IOException, InterruptedException
-    {
-        return createClient(hostPort);
-    }
-
-    protected TestableZooKeeper createClient(String hp)
-        throws IOException, InterruptedException
-    {
-        CountdownWatcher watcher = new CountdownWatcher();
-        return createClient(watcher, hp);
-    }
-
-    protected TestableZooKeeper createClient(CountdownWatcher watcher)
-        throws IOException, InterruptedException
-    {
-        return createClient(watcher, hostPort);
-    }
-
-    private List<ZooKeeper> allClients;
-    private boolean allClientsSetup = false;
-
-    protected TestableZooKeeper createClient(CountdownWatcher watcher, String hp)
-        throws IOException, InterruptedException
-    {
-        return createClient(watcher, hp, CONNECTION_TIMEOUT);
-    }
-
-    protected TestableZooKeeper createClient(CountdownWatcher watcher,
-            String hp, int timeout)
-        throws IOException, InterruptedException
-    {
-        watcher.reset();
-        TestableZooKeeper zk = new TestableZooKeeper(hp, timeout, watcher);
-        if (!watcher.clientConnected.await(timeout, TimeUnit.MILLISECONDS))
-        {
-            Assert.fail("Unable to connect to server");
-        }
-        synchronized(this) {
-            if (!allClientsSetup) {
-                LOG.error("allClients never setup");
-                Assert.fail("allClients never setup");
-            }
-            if (allClients != null) {
-                allClients.add(zk);
-                JMXEnv.ensureAll(getHexSessionId(zk.getSessionId()));
-            } else {
-                // test done - close the zk, not needed
-                zk.close();
-            }
-        }
-
-        return zk;
-    }
-
-    public static class HostPort {
-        String host;
-        int port;
-        public HostPort(String host, int port) {
-            this.host = host;
-            this.port = port;
-        }
-    }
-    public static List<HostPort> parseHostPortList(String hplist) {
-        ArrayList<HostPort> alist = new ArrayList<HostPort>();
-        for (String hp: hplist.split(",")) {
-            int idx = hp.lastIndexOf(':');
-            String host = hp.substring(0, idx);
-            int port;
-            try {
-                port = Integer.parseInt(hp.substring(idx + 1));
-            } catch(RuntimeException e) {
-                throw new RuntimeException("Problem parsing " + hp + e.toString());
-            }
-            alist.add(new HostPort(host,port));
-        }
-        return alist;
-    }
-
-    public static boolean waitForServerUp(String hp, long timeout) {
-        return waitForServerUp(hp, timeout, false);
-    }
-
-    public static boolean waitForServerUp(String hp, long timeout, boolean secure) {
-        long start = Time.currentElapsedTime();
-        while (true) {
-            try {
-                // if there are multiple hostports, just take the first one
-                HostPort hpobj = parseHostPortList(hp).get(0);
-                String result = send4LetterWord(hpobj.host, hpobj.port, "stat", secure);
-                if (result.startsWith("Zookeeper version:") &&
-                        !result.contains("READ-ONLY")) {
-                    return true;
-                }
-            } catch (ConnectException e) {
-                // ignore as this is expected, do not log stacktrace
-                LOG.info("server {} not up: {}", hp, e.toString());
-            } catch (IOException e) {
-                // ignore as this is expected
-                LOG.info("server {} not up", hp, e);
-            } catch (SSLContextException e) {
-                LOG.error("server {} not up", hp, e);
-            }
-
-            if (Time.currentElapsedTime() > start + timeout) {
-                break;
-            }
-            try {
-                Thread.sleep(250);
-            } catch (InterruptedException e) {
-                // ignore
-            }
-        }
-        return false;
-    }
-
-    public static boolean waitForServerDown(String hp, long timeout) {
-        return waitForServerDown(hp, timeout, false);
-    }
-
-    public static boolean waitForServerDown(String hp, long timeout, boolean secure) {
-        long start = Time.currentElapsedTime();
-        while (true) {
-            try {
-                HostPort hpobj = parseHostPortList(hp).get(0);
-                send4LetterWord(hpobj.host, hpobj.port, "stat", secure);
-            } catch (IOException e) {
-                return true;
-            } catch (SSLContextException e) {
-                return true;
-            }
-
-            if (Time.currentElapsedTime() > start + timeout) {
-                break;
-            }
-            try {
-                Thread.sleep(250);
-            } catch (InterruptedException e) {
-                // ignore
-            }
-        }
-        return false;
-    }
-
-    /**
-     * Return true if any of the states is achieved
-     */
-    public static boolean waitForServerState(QuorumPeer qp, int timeout,
-            String... serverStates) {
-        long start = Time.currentElapsedTime();
-        while (true) {
-            try {
-                Thread.sleep(250);
-            } catch (InterruptedException e) {
-                // ignore
-            }
-            for (String state : serverStates) {
-                if (qp.getServerState().equals(state)) {
-                    return true;
-                }
-            }
-            if (Time.currentElapsedTime() > start + timeout) {
-                return false;
-            }
-        }
-    }
-
-    static void verifyThreadTerminated(Thread thread, long millis)
-        throws InterruptedException
-    {
-        thread.join(millis);
-        if (thread.isAlive()) {
-            LOG.error("Thread " + thread.getName() + " : "
-                    + Arrays.toString(thread.getStackTrace()));
-            Assert.assertFalse("thread " + thread.getName()
-                    + " still alive after join", true);
-        }
-    }
-
-    public static File createEmptyTestDir() throws IOException {
-        return createTmpDir(BASETEST, false);
-    }
-
-    public static File createTmpDir() throws IOException {
-        return createTmpDir(BASETEST, true);
-    }
-
-    static File createTmpDir(File parentDir, boolean createInitFile) throws IOException {
-        File tmpFile = File.createTempFile("test", ".junit", parentDir);
-        // don't delete tmpFile - this ensures we don't attempt to create
-        // a tmpDir with a duplicate name
-        File tmpDir = new File(tmpFile + ".dir");
-        Assert.assertFalse(tmpDir.exists()); // never true if tmpfile does it's job
-        Assert.assertTrue(tmpDir.mkdirs());
-
-        // todo not every tmp directory needs this file
-        if (createInitFile) {
-            createInitializeFile(tmpDir);
-        }
-
-        return tmpDir;
-    }
-
-    public static void createInitializeFile(File dir) throws IOException {
-        File initFile = new File(dir, "initialize");
-        if (!initFile.exists()) {
-            Assert.assertTrue(initFile.createNewFile());
-        }
-    }
-
-    private static int getPort(String hostPort) {
-        String[] split = hostPort.split(":");
-        String portstr = split[split.length-1];
-        String[] pc = portstr.split("/");
-        if (pc.length > 1) {
-            portstr = pc[0];
-        }
-        return Integer.parseInt(portstr);
-    }
-
-    /**
-     * Starting the given server instance
-     */
-    public static void startServerInstance(File dataDir,
-            ServerCnxnFactory factory, String hostPort, int serverId) throws IOException,
-            InterruptedException {
-        final int port = getPort(hostPort);
-        LOG.info("STARTING server instance 127.0.0.1:{}", port);
-        ZooKeeperServer zks = new ZooKeeperServer(dataDir, dataDir, 3000);
-        zks.setCreateSessionTrackerServerId(serverId);
-        factory.startup(zks);
-        Assert.assertTrue("waiting for server up", ClientBase.waitForServerUp(
-                "127.0.0.1:" + port, CONNECTION_TIMEOUT, factory.isSecure()));
-    }
-
-    /**
-     * This method instantiates a new server. Starting of the server
-     * instance has been moved to a separate method
-     * {@link ClientBase#startServerInstance(File, ServerCnxnFactory, String, int)}.
-     * Because any exception on starting the server would leave the server
-     * running and the caller would not be able to shutdown the instance. This
-     * may affect other test cases.
-     *
-     * @return newly created server instance
-     *
-     * @see <a
-     *      href="https://issues.apache.org/jira/browse/ZOOKEEPER-1852">ZOOKEEPER-1852</a>
-     *      for more information.
-     */
-    public static ServerCnxnFactory createNewServerInstance(
-            ServerCnxnFactory factory, String hostPort, int maxCnxns)
-            throws IOException, InterruptedException {
-        final int port = getPort(hostPort);
-        LOG.info("CREATING server instance 127.0.0.1:{}", port);
-        if (factory == null) {
-            factory = ServerCnxnFactory.createFactory(port, maxCnxns);
-        }
-        return factory;
-    }
-
-    static void shutdownServerInstance(ServerCnxnFactory factory,
-            String hostPort)
-    {
-        if (factory != null) {
-            ZKDatabase zkDb = null;
-            {
-                ZooKeeperServer zs = getServer(factory);
-                if (zs != null) {
-                    zkDb = zs.getZKDatabase();
-                }
-            }
-            factory.shutdown();
-            try {
-                if (zkDb != null) {
-                    zkDb.close();
-                }
-            } catch (IOException ie) {
-                LOG.warn("Error closing logs ", ie);
-            }
-            final int PORT = getPort(hostPort);
-
-            Assert.assertTrue("waiting for server down",
-                       ClientBase.waitForServerDown("127.0.0.1:" + PORT,
-                                                    CONNECTION_TIMEOUT,
-                                                    factory.isSecure()));
-        }
-    }
-
-    /**
-     * Test specific setup
-     */
-    public static void setupTestEnv() {
-        // during the tests we run with 100K prealloc in the logs.
-        // on windows systems prealloc of 64M was seen to take ~15seconds
-        // resulting in test Assert.failure (client timeout on first session).
-        // set env and directly in order to handle static init/gc issues
-        System.setProperty("zookeeper.preAllocSize", "100");
-        FilePadding.setPreallocSize(100 * 1024);
-    }
-
-    protected void setUpAll() throws Exception {
-        allClients = new LinkedList<ZooKeeper>();
-        allClientsSetup = true;
-    }
-
-    @Before
-    public void setUp() throws Exception {
-        setUpWithServerId(1);
-    }
-
-    protected void setUpWithServerId(int serverId) throws Exception {
-        /* some useful information - log the number of fds used before
-         * and after a test is run. Helps to verify we are freeing resources
-         * correctly. Unfortunately this only works on unix systems (the
-         * only place sun has implemented as part of the mgmt bean api.
-         */
-        OSMXBean osMbean = new OSMXBean();
-        if (osMbean.getUnix() == true) {
-            initialFdCount = osMbean.getOpenFileDescriptorCount();
-            LOG.info("Initial fdcount is: "
-                    + initialFdCount);
-        }
-
-        setupTestEnv();
-
-        JMXEnv.setUp();
-
-        setUpAll();
-
-        tmpDir = createTmpDir(BASETEST, true);
-
-        startServer(serverId);
-
-        LOG.info("Client test setup finished");
-    }
-
-    protected void startServer() throws Exception {
-        startServer(1);
-    }
-
-    private void startServer(int serverId) throws Exception {
-        LOG.info("STARTING server");
-        serverFactory = createNewServerInstance(serverFactory, hostPort,
-                maxCnxns);
-        startServerInstance(tmpDir, serverFactory, hostPort, serverId);
-        // ensure that server and data bean are registered
-        Set<ObjectName> children = JMXEnv.ensureParent("InMemoryDataTree",
-                "StandaloneServer_port");
-        // Remove beans which are related to zk client sessions. Strong
-        // assertions cannot be done for these client sessions because
-        // registeration of these beans with server will happen only on their
-        // respective reconnection interval
-        verifyUnexpectedBeans(children);
-    }
-
-    private void verifyUnexpectedBeans(Set<ObjectName> children) {
-        if (allClients != null) {
-            for (ZooKeeper zkc : allClients) {
-                Iterator<ObjectName> childItr = children.iterator();
-                while (childItr.hasNext()) {
-                    ObjectName clientBean = childItr.next();
-                    if (clientBean.toString().contains(
-                            getHexSessionId(zkc.getSessionId()))) {
-                        LOG.info("found name:" + zkc.getSessionId()
-                                + " client bean:" + clientBean.toString());
-                        childItr.remove();
-                    }
-                }
-            }
-        }
-        for (ObjectName bean : children) {
-            LOG.info("unexpected:" + bean.toString());
-        }
-        Assert.assertEquals("Unexpected bean exists!", 0, children.size());
-    }
-
-    /**
-     * Returns a string representation of the given long value session id
-     *
-     * @param sessionId
-     *            long value of session id
-     * @return string representation of session id
-     */
-    protected static String getHexSessionId(long sessionId) {
-        return "0x" + Long.toHexString(sessionId);
-    }
-
-    protected void stopServer() throws Exception {
-        LOG.info("STOPPING server");
-        shutdownServerInstance(serverFactory, hostPort);
-        serverFactory = null;
-        // ensure no beans are leftover
-        JMXEnv.ensureOnly();
-    }
-
-
-    protected static ZooKeeperServer getServer(ServerCnxnFactory fac) {
-        ZooKeeperServer zs = ServerCnxnFactoryAccessor.getZkServer(fac);
-
-        return zs;
-    }
-
-    protected void tearDownAll() throws Exception {
-        synchronized (this) {
-            if (allClients != null) for (ZooKeeper zk : allClients) {
-                try {
-                    if (zk != null)
-                        zk.close();
-                } catch (InterruptedException e) {
-                    LOG.warn("ignoring interrupt", e);
-                }
-            }
-            allClients = null;
-        }
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        LOG.info("tearDown starting");
-
-        tearDownAll();
-
-        stopServer();
-
-        if (tmpDir != null) {
-            Assert.assertTrue("delete " + tmpDir.toString(), recursiveDelete(tmpDir));
-        }
-
-        // This has to be set to null when the same instance of this class is reused between test cases
-        serverFactory = null;
-
-        JMXEnv.tearDown();
-
-        /* some useful information - log the number of fds used before
-         * and after a test is run. Helps to verify we are freeing resources
-         * correctly. Unfortunately this only works on unix systems (the
-         * only place sun has implemented as part of the mgmt bean api.
-         */
-        OSMXBean osMbean = new OSMXBean();
-        if (osMbean.getUnix() == true) {
-            long fdCount = osMbean.getOpenFileDescriptorCount();
-            String message = "fdcount after test is: "
-                    + fdCount + " at start it was " + initialFdCount;
-            LOG.info(message);
-            if (fdCount > initialFdCount) {
-                LOG.info("sleeping for 20 secs");
-                //Thread.sleep(60000);
-                //assertTrue(message, fdCount <= initialFdCount);
-            }
-        }
-    }
-
-    public static MBeanServerConnection jmxConn() throws IOException {
-        return JMXEnv.conn();
-    }
-
-    public static boolean recursiveDelete(File d) {
-       return TestUtils.deleteFileRecursively(d, true);
-    }
-
-    public static void logAllStackTraces() {
-        StringBuilder sb = new StringBuilder();
-        sb.append("Starting logAllStackTraces()\n");
-        Map<Thread, StackTraceElement[]> threads = Thread.getAllStackTraces();
-        for (Entry<Thread, StackTraceElement[]> e: threads.entrySet()) {
-            sb.append("Thread " + e.getKey().getName() + "\n");
-            for (StackTraceElement elem: e.getValue()) {
-                sb.append("\tat " + elem + "\n");
-            }
-        }
-        sb.append("Ending logAllStackTraces()\n");
-        LOG.error(sb.toString());
-    }
-
-    /*
-     * Verify that all of the servers see the same number of nodes
-     * at the root
-     */
-    void verifyRootOfAllServersMatch(String hostPort)
-        throws InterruptedException, KeeperException, IOException
-    {
-        String parts[] = hostPort.split(",");
-
-        // run through till the counts no longer change on each server
-        // max 15 tries, with 2 second sleeps, so approx 30 seconds
-        int[] counts = new int[parts.length];
-        int failed = 0;
-        for (int j = 0; j < 100; j++) {
-            int newcounts[] = new int[parts.length];
-            int i = 0;
-            for (String hp : parts) {
-                try {
-                    ZooKeeper zk = createClient(hp);
-
-                    try {
-                        newcounts[i++] = zk.getChildren("/", false).size();
-                    } finally {
-                        zk.close();
-                    }
-                } catch (Throwable t) {
-                    failed++;
-                    // if session creation Assert.fails dump the thread stack
-                    // and try the next server
-                    logAllStackTraces();
-                }
-            }
-
-            if (Arrays.equals(newcounts, counts)) {
-                LOG.info("Found match with array:"
-                        + Arrays.toString(newcounts));
-                counts = newcounts;
-                break;
-            } else {
-                counts = newcounts;
-                Thread.sleep(10000);
-            }
-
-            // don't keep this up too long, will Assert.assert false below
-            if (failed > 10) {
-                break;
-            }
-        }
-
-        // verify all the servers reporting same number of nodes
-        String logmsg = "node count not consistent{} {}";
-        for (int i = 1; i < parts.length; i++) {
-            if (counts[i-1] != counts[i]) {
-                LOG.error(logmsg, Integer.valueOf(counts[i-1]), Integer.valueOf(counts[i]));
-            } else {
-                LOG.info(logmsg, Integer.valueOf(counts[i-1]), Integer.valueOf(counts[i]));
-            }
-        }
-    }
-
-    public static String readFile(File file) throws IOException {
-        ByteArrayOutputStream os = new ByteArrayOutputStream();
-        BufferedInputStream is = new BufferedInputStream(new FileInputStream(file));
-        try {
-            IOUtils.copyBytes(is, os, 1024, true);
-        } finally {
-            is.close();
-        }
-        return os.toString();
-    }
-
-    public static String join(String separator, Object[] parts) {
-        StringBuilder sb = new StringBuilder();
-        boolean first = true;
-        for (Object part : parts) {
-            if (!first) {
-                sb.append(separator);
-                first = false;
-            }
-            sb.append(part);
-        }
-        return sb.toString();
-    }
-
-    public static ZooKeeper createZKClient(String cxnString) throws Exception {
-        return createZKClient(cxnString, CONNECTION_TIMEOUT);
-    }
-
-    /**
-     * Returns ZooKeeper client after connecting to ZooKeeper Server. Session
-     * timeout is {@link #CONNECTION_TIMEOUT}
-     *
-     * @param cxnString
-     *            connection string in the form of host:port
-     * @param sessionTimeout
-     * @throws IOException
-     *             in cases of network failure
-     */
-    public static ZooKeeper createZKClient(String cxnString, int sessionTimeout) throws IOException {
-        CountdownWatcher watcher = new CountdownWatcher();
-        ZooKeeper zk = new ZooKeeper(cxnString, sessionTimeout, watcher);
-        try {
-            watcher.waitForConnected(CONNECTION_TIMEOUT);
-        } catch (InterruptedException | TimeoutException e) {
-            Assert.fail("ZooKeeper client can not connect to " + cxnString);
-        }
-        return zk;
-    }
-}

http://git-wip-us.apache.org/repos/asf/zookeeper/blob/cb9f303b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientHammerTest.java
----------------------------------------------------------------------
diff --git a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientHammerTest.java b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientHammerTest.java
deleted file mode 100644
index 01cdf27..0000000
--- a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientHammerTest.java
+++ /dev/null
@@ -1,246 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.zookeeper.test;
-
-import java.io.IOException;
-import java.util.Date;
-import java.util.List;
-
-import org.apache.zookeeper.common.Time;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.apache.zookeeper.CreateMode;
-import org.apache.zookeeper.KeeperException;
-import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.ZooDefs.Ids;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class ClientHammerTest extends ClientBase {
-    protected static final Logger LOG = LoggerFactory.getLogger(ClientHammerTest.class);
-
-    private static final long HAMMERTHREAD_LATENCY = 5;
-
-    private static abstract class HammerThread extends Thread {
-        protected final int count;
-        protected volatile int current = 0;
-
-        HammerThread(String name, int count) {
-            super(name);
-            this.count = count;
-        }
-    }
-
-    private static class BasicHammerThread extends HammerThread {
-        private final ZooKeeper zk;
-        private final String prefix;
-
-        BasicHammerThread(String name, ZooKeeper zk, String prefix, int count) {
-            super(name, count);
-            this.zk = zk;
-            this.prefix = prefix;
-        }
-
-        public void run() {
-            byte b[] = new byte[256];
-            try {
-                for (; current < count; current++) {
-                    // Simulate a bit of network latency...
-                    Thread.sleep(HAMMERTHREAD_LATENCY);
-                    zk.create(prefix + current, b, Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-                }
-            } catch (Throwable t) {
-                LOG.error("Client create operation Assert.failed", t);
-            } finally {
-                try {
-                    zk.close();
-                } catch (InterruptedException e) {
-                    LOG.warn("Unexpected", e);
-                }
-            }
-        }
-    }
-
-    private static class SuperHammerThread extends HammerThread {
-        private final ClientHammerTest parent;
-        private final String prefix;
-
-        SuperHammerThread(String name, ClientHammerTest parent, String prefix,
-                int count)
-        {
-            super(name, count);
-            this.parent = parent;
-            this.prefix = prefix;
-        }
-
-        public void run() {
-            byte b[] = new byte[256];
-            try {
-                for (; current < count; current++) {
-                    ZooKeeper zk = parent.createClient();
-                    try {
-                        zk.create(prefix + current, b, Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-                    } finally {
-                        try {
-                            zk.close();
-                        } catch (InterruptedException e) {
-                            LOG.warn("Unexpected", e);
-                        }
-                    }
-                }
-            } catch (Throwable t) {
-                LOG.error("Client create operation Assert.failed", t);
-            }
-        }
-    }
-
-    /**
-     * Separate threads each creating a number of nodes. Each thread
-     * is using a non-shared (owned by thread) client for all node creations.
-     * @throws Throwable
-     */
-    @Test
-    public void testHammerBasic() throws Throwable {
-        runHammer(10, 1000);
-    }
-
-    public void runHammer(final int threadCount, final int childCount)
-        throws Throwable
-    {
-        try {
-            HammerThread[] threads = new HammerThread[threadCount];
-            long start = Time.currentElapsedTime();
-            for (int i = 0; i < threads.length; i++) {
-                ZooKeeper zk = createClient();
-                String prefix = "/test-" + i;
-                zk.create(prefix, new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-                prefix += "/";
-                HammerThread thread =
-                    new BasicHammerThread("BasicHammerThread-" + i, zk, prefix,
-                            childCount);
-                thread.start();
-
-                threads[i] = thread;
-            }
-
-            verifyHammer(start, threads, childCount);
-        } catch (Throwable t) {
-            LOG.error("test Assert.failed", t);
-            throw t;
-        }
-    }
-
-    /**
-     * Separate threads each creating a number of nodes. Each thread
-     * is creating a new client for each node creation.
-     * @throws Throwable
-     */
-    @Test
-    public void testHammerSuper() throws Throwable {
-        try {
-            final int threadCount = 5;
-            final int childCount = 10;
-
-            HammerThread[] threads = new HammerThread[threadCount];
-            long start = Time.currentElapsedTime();
-            for (int i = 0; i < threads.length; i++) {
-                String prefix = "/test-" + i;
-                {
-                    ZooKeeper zk = createClient();
-                    try {
-                        zk.create(prefix, new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-                    } finally {
-                        zk.close();
-                    }
-                }
-                prefix += "/";
-                HammerThread thread =
-                    new SuperHammerThread("SuperHammerThread-" + i, this,
-                            prefix, childCount);
-                thread.start();
-
-                threads[i] = thread;
-            }
-
-            verifyHammer(start, threads, childCount);
-        } catch (Throwable t) {
-            LOG.error("test Assert.failed", t);
-            throw t;
-        }
-    }
-
-    public void verifyHammer(long start, HammerThread[] threads, int childCount)
-        throws IOException, InterruptedException, KeeperException
-    {
-        // look for the clients to finish their create operations
-        LOG.info("Starting check for completed hammers");
-        int workingCount = threads.length;
-        for (int i = 0; i < 120; i++) {
-            Thread.sleep(10000);
-            for (HammerThread h : threads) {
-                if (!h.isAlive() || h.current == h.count) {
-                    workingCount--;
-                }
-            }
-            if (workingCount == 0) {
-                break;
-            }
-            workingCount = threads.length;
-        }
-        if (workingCount > 0) {
-            for (HammerThread h : threads) {
-                LOG.warn(h.getName() + " never finished creation, current:"
-                        + h.current);
-            }
-        } else {
-            LOG.info("Hammer threads completed creation operations");
-        }
-
-        for (HammerThread h : threads) {
-            final int safetyFactor = 3;
-            verifyThreadTerminated(h,
-                    (long)threads.length * (long)childCount
-                    * HAMMERTHREAD_LATENCY * (long)safetyFactor);
-        }
-        LOG.info(new Date() + " Total time "
-                + (Time.currentElapsedTime() - start));
-
-        ZooKeeper zk = createClient();
-        try {
-            LOG.info("******************* Connected to ZooKeeper" + new Date());
-            for (int i = 0; i < threads.length; i++) {
-                LOG.info("Doing thread: " + i + " " + new Date());
-                List<String> children =
-                    zk.getChildren("/test-" + i, false);
-                Assert.assertEquals(childCount, children.size());
-                children = zk.getChildren("/test-" + i, false, null);
-                Assert.assertEquals(childCount, children.size());
-            }
-            for (int i = 0; i < threads.length; i++) {
-                List<String> children =
-                    zk.getChildren("/test-" + i, false);
-                Assert.assertEquals(childCount, children.size());
-                children = zk.getChildren("/test-" + i, false, null);
-                Assert.assertEquals(childCount, children.size());
-            }
-        } finally {
-            zk.close();
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/zookeeper/blob/cb9f303b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientPortBindTest.java
----------------------------------------------------------------------
diff --git a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientPortBindTest.java b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientPortBindTest.java
deleted file mode 100644
index 15dc891..0000000
--- a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientPortBindTest.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.zookeeper.test;
-
-import static org.apache.zookeeper.test.ClientBase.CONNECTION_TIMEOUT;
-
-import java.io.File;
-import java.net.Inet6Address;
-import java.net.InetAddress;
-import java.net.InetSocketAddress;
-import java.net.NetworkInterface;
-import java.net.SocketException;
-import java.util.Enumeration;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.apache.zookeeper.PortAssignment;
-import org.apache.zookeeper.ZKTestCase;
-import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.server.ServerCnxnFactory;
-import org.apache.zookeeper.server.ZooKeeperServer;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class ClientPortBindTest extends ZKTestCase{
-    protected static final Logger LOG = 
-        LoggerFactory.getLogger(ClientPortBindTest.class);
-
-    /**
-     * Verify that the server binds to the specified address
-     */
-    @Test
-    public void testBindByAddress() throws Exception {
-        String bindAddress = null;
-        Enumeration<NetworkInterface> intfs =
-            NetworkInterface.getNetworkInterfaces();
-        // if we have a loopback and it has an address use it
-        while(intfs.hasMoreElements()) {
-            NetworkInterface i = intfs.nextElement();
-            try {
-                if (i.isLoopback()) {
-                  Enumeration<InetAddress> addrs = i.getInetAddresses();
-                  while (addrs.hasMoreElements()) {
-                    InetAddress a = addrs.nextElement();
-                    if(a.isLoopbackAddress()) {
-                      bindAddress = a.getHostAddress();
-                      if (a instanceof Inet6Address) {
-                          bindAddress = "[" + bindAddress + "]";
-                      }
-                      break;
-                    }
-                  }
-                }
-            } catch (SocketException se) {
-                LOG.warn("Couldn't find  loopback interface: " + se.getMessage());
-            }
-        }
-        if (bindAddress == null) {
-            LOG.warn("Unable to determine loop back address, skipping test");
-            return;
-        }
-        final int PORT = PortAssignment.unique();
-
-        LOG.info("Using " + bindAddress + " as the bind address");
-        final String HOSTPORT = bindAddress + ":" + PORT;
-        LOG.info("Using " + HOSTPORT + " as the host/port");
-
-
-        File tmpDir = ClientBase.createTmpDir();
-
-        ClientBase.setupTestEnv();
-        ZooKeeperServer zks = new ZooKeeperServer(tmpDir, tmpDir, 3000);
-
-        ServerCnxnFactory f = ServerCnxnFactory.createFactory(
-                new InetSocketAddress(bindAddress, PORT), -1);
-        f.startup(zks);
-        LOG.info("starting up the the server, waiting");
-
-        Assert.assertTrue("waiting for server up",
-                   ClientBase.waitForServerUp(HOSTPORT,
-                                   CONNECTION_TIMEOUT));
-        ZooKeeper zk = ClientBase.createZKClient(HOSTPORT);
-        try {
-            zk.close();
-        } finally {
-            f.shutdown();
-            zks.shutdown();
-
-            Assert.assertTrue("waiting for server down",
-                       ClientBase.waitForServerDown(HOSTPORT,
-                                                    CONNECTION_TIMEOUT));
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/zookeeper/blob/cb9f303b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientRetryTest.java
----------------------------------------------------------------------
diff --git a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientRetryTest.java b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientRetryTest.java
deleted file mode 100644
index e53d911..0000000
--- a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientRetryTest.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.zookeeper.test;
-
-import java.io.IOException;
-import java.util.concurrent.TimeoutException;
-
-import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.ZooKeeper.States;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class ClientRetryTest extends ClientBase {
-
-    @Override
-    public void setUp() throws Exception {
-        maxCnxns = 1;
-        super.setUp();
-    }
-    /*
-     * This is a simple test - try to connect two clients to a server
-     * accepting a maximum of one connection from each address. Check that
-     * only one is accepted. Close that connection, and check that the other
-     * eventually connects.
-     *
-     * There is a possibility of a false positive here, as when zk2 is tested
-     * for having connected it might not have been given enough time, and finish
-     * connecting after the test is done. Since the
-     * server doesn't tell the client why it hasn't connected, there's no
-     * obvious way to detect the difference.
-     */
-    @Test
-    public void testClientRetry() throws IOException, InterruptedException, TimeoutException{
-        CountdownWatcher cdw1 = new CountdownWatcher();
-        CountdownWatcher cdw2 = new CountdownWatcher();
-        ZooKeeper zk = new ZooKeeper(hostPort, 10000, cdw1);
-        try {
-            cdw1.waitForConnected(CONNECTION_TIMEOUT);
-            ZooKeeper zk2 = new ZooKeeper(hostPort, 10000, cdw2);
-            try {
-                States s1 = zk.getState();
-                States s2 = zk2.getState();
-                Assert.assertSame(s1,States.CONNECTED);
-                Assert.assertSame(s2,States.CONNECTING);
-                cdw1.reset();
-                zk.close();
-                cdw1.waitForDisconnected(CONNECTION_TIMEOUT);
-                cdw2.waitForConnected(CONNECTION_TIMEOUT);
-                Assert.assertSame(zk2.getState(),States.CONNECTED);
-            } finally {
-                zk2.close();
-            }
-        } finally {
-            zk.close();
-        }
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/zookeeper/blob/cb9f303b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSSLTest.java
----------------------------------------------------------------------
diff --git a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSSLTest.java b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSSLTest.java
deleted file mode 100644
index 08ffb4e..0000000
--- a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSSLTest.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/**
- *
- */
-package org.apache.zookeeper.test;
-
-
-import org.apache.zookeeper.CreateMode;
-import org.apache.zookeeper.PortAssignment;
-import org.apache.zookeeper.ZooDefs;
-import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.client.ZKClientConfig;
-import org.apache.zookeeper.common.ClientX509Util;
-import org.apache.zookeeper.server.ServerCnxnFactory;
-import org.apache.zookeeper.server.quorum.QuorumPeerTestBase;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-public class ClientSSLTest extends QuorumPeerTestBase {
-
-    private ClientX509Util clientX509Util = new ClientX509Util();
-
-    @Before
-    public void setup() {
-        String testDataPath = System.getProperty("test.data.dir", "build/test/data");
-        System.setProperty(ServerCnxnFactory.ZOOKEEPER_SERVER_CNXN_FACTORY, "org.apache.zookeeper.server.NettyServerCnxnFactory");
-        System.setProperty(ZKClientConfig.ZOOKEEPER_CLIENT_CNXN_SOCKET, "org.apache.zookeeper.ClientCnxnSocketNetty");
-        System.setProperty(ZKClientConfig.SECURE_CLIENT, "true");
-        System.setProperty(clientX509Util.getSslKeystoreLocationProperty(), testDataPath + "/ssl/testKeyStore.jks");
-        System.setProperty(clientX509Util.getSslKeystorePasswdProperty(), "testpass");
-        System.setProperty(clientX509Util.getSslTruststoreLocationProperty(), testDataPath + "/ssl/testTrustStore.jks");
-        System.setProperty(clientX509Util.getSslTruststorePasswdProperty(), "testpass");
-    }
-
-    @After
-    public void teardown() throws Exception {
-        System.clearProperty(ServerCnxnFactory.ZOOKEEPER_SERVER_CNXN_FACTORY);
-        System.clearProperty(ZKClientConfig.ZOOKEEPER_CLIENT_CNXN_SOCKET);
-        System.clearProperty(ZKClientConfig.SECURE_CLIENT);
-        System.clearProperty(clientX509Util.getSslKeystoreLocationProperty());
-        System.clearProperty(clientX509Util.getSslKeystorePasswdProperty());
-        System.clearProperty(clientX509Util.getSslTruststoreLocationProperty());
-        System.clearProperty(clientX509Util.getSslTruststorePasswdProperty());
-    }
-
-    /**
-     * This test checks that client <-> server SSL works in cluster setup of ZK servers, which includes:
-     * 1. setting "secureClientPort" in "zoo.cfg" file.
-     * 2. setting jvm flags for serverCnxn, keystore, truststore.
-     * Finally, a zookeeper client should be able to connect to the secure port and
-     * communicate with server via secure connection.
-     * <p/>
-     * Note that in this test a ZK server has two ports -- clientPort and secureClientPort.
-     */
-    @Test
-    public void testClientServerSSL() throws Exception {
-        final int SERVER_COUNT = 3;
-        final int clientPorts[] = new int[SERVER_COUNT];
-        final Integer secureClientPorts[] = new Integer[SERVER_COUNT];
-        StringBuilder sb = new StringBuilder();
-        for (int i = 0; i < SERVER_COUNT; i++) {
-            clientPorts[i] = PortAssignment.unique();
-            secureClientPorts[i] = PortAssignment.unique();
-            String server = String.format("server.%d=localhost:%d:%d:participant;localhost:%d",
-                    i, PortAssignment.unique(), PortAssignment.unique(), clientPorts[i]);
-            sb.append(server + "\n");
-        }
-        String quorumCfg = sb.toString();
-
-
-        MainThread[] mt = new MainThread[SERVER_COUNT];
-        for (int i = 0; i < SERVER_COUNT; i++) {
-            mt[i] = new MainThread(i, quorumCfg, secureClientPorts[i], true);
-            mt[i].start();
-        }
-
-        // Servers have been set up. Now go test if secure connection is successful.
-        for (int i = 0; i < SERVER_COUNT; i++) {
-            Assert.assertTrue("waiting for server " + i + " being up",
-                    ClientBase.waitForServerUp("127.0.0.1:" + clientPorts[i], TIMEOUT));
-
-            ZooKeeper zk = ClientBase.createZKClient("127.0.0.1:" + secureClientPorts[i], TIMEOUT);
-            // Do a simple operation to make sure the connection is fine.
-            zk.create("/test", "".getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-            zk.delete("/test", -1);
-            zk.close();
-        }
-
-        for (int i = 0; i < mt.length; i++) {
-            mt[i].shutdown();
-        }
-    }
-
-
-    /**
-     * Developers might use standalone mode (which is the default for one server).
-     * This test checks SSL works in standalone mode of ZK server.
-     * <p/>
-     * Note that in this test the Zk server has only secureClientPort
-     */
-    @Test
-    public void testSecureStandaloneServer() throws Exception {
-        Integer secureClientPort = PortAssignment.unique();
-        MainThread mt = new MainThread(MainThread.UNSET_MYID, "", secureClientPort, false);
-        mt.start();
-
-        ZooKeeper zk = ClientBase.createZKClient("127.0.0.1:" + secureClientPort, TIMEOUT);
-        zk.create("/test", "".getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-        zk.delete("/test", -1);
-        zk.close();
-        mt.shutdown();
-    }
-}

http://git-wip-us.apache.org/repos/asf/zookeeper/blob/cb9f303b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSkipACLTest.java
----------------------------------------------------------------------
diff --git a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSkipACLTest.java b/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSkipACLTest.java
deleted file mode 100644
index 2c57ff7..0000000
--- a/zookeeper-common/src/test/java/org/apache/zookeeper/test/ClientSkipACLTest.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.zookeeper.test;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-
-public class ClientSkipACLTest extends ClientTest {
-    @BeforeClass
-    static public void setup() {
-        System.setProperty("zookeeper.skipACL", "yes");
-    }
-
-    @AfterClass
-    static public void teardown() {
-        System.clearProperty("zookeeper.skipACL");
-    }
-}
\ No newline at end of file