You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bigtop.apache.org by of...@apache.org on 2015/04/20 13:24:46 UTC

bigtop git commit: BIGTOP-1468: Include zookeeper 3.4.6

Repository: bigtop
Updated Branches:
  refs/heads/master 527af71bc -> f0be77f43


BIGTOP-1468: Include zookeeper 3.4.6


Project: http://git-wip-us.apache.org/repos/asf/bigtop/repo
Commit: http://git-wip-us.apache.org/repos/asf/bigtop/commit/f0be77f4
Tree: http://git-wip-us.apache.org/repos/asf/bigtop/tree/f0be77f4
Diff: http://git-wip-us.apache.org/repos/asf/bigtop/diff/f0be77f4

Branch: refs/heads/master
Commit: f0be77f43e51dbe271b5ee080364ec5ffd66fa0c
Parents: 527af71
Author: Olaf Flebbe <o....@science-computing.de>
Authored: Thu Apr 16 11:19:54 2015 +0200
Committer: Olaf Flebbe <of...@oflebbe.de>
Committed: Mon Apr 20 13:23:48 2015 +0200

----------------------------------------------------------------------
 .../src/common/zookeeper/ZOOKEEPER-1911.patch   |  27 ---
 .../src/common/zookeeper/do-component-build     |   3 -
 .../zookeeper/patch0-ZOOKEEPER-1897v3.diff      |  14 ++
 .../common/zookeeper/patch1-ZOOKEEPER-1911.diff |  25 +++
 .../common/zookeeper/patch2-ZOOKEEPER-1926.diff | 177 +++++++++++++++++++
 .../common/zookeeper/patch3-ZOOKEEPER-2064.diff | 121 +++++++++++++
 bigtop-packages/src/deb/zookeeper/compat        |   2 +-
 bigtop-packages/src/deb/zookeeper/control       |   5 +-
 bigtop-packages/src/deb/zookeeper/rules         |   4 +-
 .../src/deb/zookeeper/zookeeper-rest.postinst   |  26 ---
 .../src/rpm/zookeeper/SPECS/zookeeper.spec      |   4 +-
 bigtop.mk                                       |   4 +-
 12 files changed, 347 insertions(+), 65 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/common/zookeeper/ZOOKEEPER-1911.patch
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/common/zookeeper/ZOOKEEPER-1911.patch b/bigtop-packages/src/common/zookeeper/ZOOKEEPER-1911.patch
deleted file mode 100644
index e4aceb0..0000000
--- a/bigtop-packages/src/common/zookeeper/ZOOKEEPER-1911.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff --git src/contrib/rest/build.xml src/contrib/rest/build.xml
-index 649dff7..fb628bc 100644
---- src/contrib/rest/build.xml
-+++ src/contrib/rest/build.xml
-@@ -48,6 +48,22 @@
-       </sequential>
-     </macrodef>
- 
-+  <target name="package" depends="jar" unless="skip.contrib">
-+    <echo message="contrib: ${name}"/>
-+    <mkdir dir="${dist.dir}${package.share}/contrib/${name}"/>
-+    <copy todir="${dist.dir}${package.share}/contrib/${name}">
-+      <fileset dir="${build.dir}">
-+        <include name="zookeeper-${version}-${name}.jar" />
-+      </fileset>
-+    </copy>
-+    <copy todir="${dist.dir}${package.share}/contrib/${name}/lib">
-+      <fileset dir="${build.dir}/lib" />
-+    </copy>
-+    <copy todir="${dist.dir}${package.share}/contrib/${name}/conf">
-+      <fileset dir="conf" />
-+    </copy>
-+  </target>
-+
-   <target name="setjarname">
-     <property name="jarname"
-               value="${build.dir}/zookeeper-${version}-${name}.jar"/>

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/common/zookeeper/do-component-build
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/common/zookeeper/do-component-build b/bigtop-packages/src/common/zookeeper/do-component-build
index 200d233..ce166cf 100644
--- a/bigtop-packages/src/common/zookeeper/do-component-build
+++ b/bigtop-packages/src/common/zookeeper/do-component-build
@@ -18,9 +18,6 @@ set -ex
 
 . `dirname ${0}`/bigtop.bom
 
-# FIXME: Remove this file for ZooKeeper 3.4.7, 3.5.0 or later
-patch -p0 < ZOOKEEPER-1911.patch
-
 ANT_OPTS="-Dversion=$ZOOKEEPER_VERSION -f build.xml $@"
 sed -i.orig -e 's#test-jar,api-report#test-jar#g' build.xml
 ant compile ${ANT_OPTS}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-1897v3.diff
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-1897v3.diff b/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-1897v3.diff
new file mode 100644
index 0000000..802647c
--- /dev/null
+++ b/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-1897v3.diff
@@ -0,0 +1,14 @@
+diff --git a/src/java/main/org/apache/zookeeper/ZooKeeperMain.java b/src/java/main/org/apache/zookeeper/ZooKeeperMain.java
+index b1b4c27..39fc465 100644
+--- a/src/java/main/org/apache/zookeeper/ZooKeeperMain.java
++++ b/src/java/main/org/apache/zookeeper/ZooKeeperMain.java
+@@ -349,6 +349,9 @@ public class ZooKeeperMain {
+                     executeLine(line);
+                 }
+             }
++        } else {
++            // Command line args non-null.  Run what was passed.
++            processCmd(cl);
+         }
+     }
+ 

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-1911.diff
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-1911.diff b/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-1911.diff
new file mode 100644
index 0000000..89579e7
--- /dev/null
+++ b/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-1911.diff
@@ -0,0 +1,25 @@
+--- zookeeper-3.4.6/src/contrib/rest/build.xml.orig	2015-04-14 22:04:16.060000000 +0200
++++ zookeeper-3.4.6/src/contrib/rest/build.xml	2015-04-14 22:04:20.268000000 +0200
+@@ -48,6 +48,22 @@
+       </sequential>
+     </macrodef>
+ 
++  <target name="package" depends="jar" unless="skip.contrib">
++    <echo message="contrib: ${name}"/>
++    <mkdir dir="${dist.dir}${package.share}/contrib/${name}"/>
++    <copy todir="${dist.dir}${package.share}/contrib/${name}">
++      <fileset dir="${build.dir}">
++        <include name="zookeeper-${version}-${name}.jar" />
++      </fileset>
++    </copy>
++    <copy todir="${dist.dir}${package.share}/contrib/${name}/lib">
++      <fileset dir="${build.dir}/lib" />
++    </copy>
++    <copy todir="${dist.dir}${package.share}/contrib/${name}/conf">
++      <fileset dir="conf" />
++    </copy>
++  </target>
++
+   <target name="setjarname">
+     <property name="jarname"
+               value="${build.dir}/zookeeper-${version}-${name}.jar"/>

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/common/zookeeper/patch2-ZOOKEEPER-1926.diff
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/common/zookeeper/patch2-ZOOKEEPER-1926.diff b/bigtop-packages/src/common/zookeeper/patch2-ZOOKEEPER-1926.diff
new file mode 100644
index 0000000..a0e5e6f
--- /dev/null
+++ b/bigtop-packages/src/common/zookeeper/patch2-ZOOKEEPER-1926.diff
@@ -0,0 +1,177 @@
+diff -ur zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/BaseSysTest.java zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/BaseSysTest.java
+--- zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/BaseSysTest.java	2015-04-14 22:07:14.464000000 +0200
++++ zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/BaseSysTest.java	2015-04-14 22:07:18.728000000 +0200
+@@ -37,6 +37,8 @@
+ 
+ @Ignore("No tests in this class.")
+ public class BaseSysTest extends TestCase {
++    private static final File testData = new File(
++            System.getProperty("test.data.dir", "build/test/data"));
+     private static int fakeBasePort = 33222;
+     private static String zkHostPort;
+     protected String prefix = "/sysTest";
+@@ -149,7 +151,7 @@
+         }
+         StringBuilder sb = new StringBuilder();
+         for(int i = 0; i < count; i++) {
+-            qpsDirs[i] = File.createTempFile("sysTest", ".tmp");
++            qpsDirs[i] = File.createTempFile("sysTest", ".tmp", testData);
+             qpsDirs[i].delete();
+             qpsDirs[i].mkdir();
+             int port = fakeBasePort+10+i;
+diff -ur zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java
+--- zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java	2015-04-14 22:07:14.464000000 +0200
++++ zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java	2015-04-14 22:07:18.728000000 +0200
+@@ -36,6 +36,9 @@
+ 
+ class QuorumPeerInstance implements Instance {
+     final private static Logger LOG = LoggerFactory.getLogger(QuorumPeerInstance.class);
++    private static final File testData = new File(
++        System.getProperty("test.data.dir", "build/test/data"));
++
+     private static final int syncLimit = 3;
+     private static final int initLimit = 3;
+     private static final int tickTime = 2000;
+@@ -55,7 +58,7 @@
+ 
+     public QuorumPeerInstance() {
+         try {
+-            File tmpFile = File.createTempFile("test", ".dir");
++            File tmpFile = File.createTempFile("test", ".dir", testData);
+             File tmpDir = tmpFile.getParentFile();
+             tmpFile.delete();
+             File zkDirs = new File(tmpDir, "zktmp.cfg");
+diff -ur zookeeper-3.4.6/src_/java/test/org/apache/zookeeper/server/quorum/LearnerTest.java zookeeper-3.4.6/src/java/test/org/apache/zookeeper/server/quorum/LearnerTest.java
+--- zookeeper-3.4.6/src_/java/test/org/apache/zookeeper/server/quorum/LearnerTest.java	2015-04-14 22:07:14.464000000 +0200
++++ zookeeper-3.4.6/src/java/test/org/apache/zookeeper/server/quorum/LearnerTest.java	2015-04-14 22:07:18.728000000 +0200
+@@ -47,6 +47,9 @@
+ import org.junit.Test;
+ 
+ public class LearnerTest extends ZKTestCase {
++  private static final File testData = new File(
++    System.getProperty("test.data.dir", "build/test/data"));
++
+ 	class SimpleLearnerZooKeeperServer extends LearnerZooKeeperServer {
+ 		boolean startupCalled;
+ 		
+@@ -84,7 +87,7 @@
+ 	}
+ 	@Test
+ 	public void syncTest() throws Exception {
+-		File tmpFile = File.createTempFile("test", ".dir");
++		File tmpFile = File.createTempFile("test", ".dir", testData);
+ 		tmpFile.delete();
+ 		try {
+ 			FileTxnSnapLog ftsl = new FileTxnSnapLog(tmpFile, tmpFile);
+diff -ur zookeeper-3.4.6/src_/java/test/org/apache/zookeeper/server/quorum/Zab1_0Test.java zookeeper-3.4.6/src/java/test/org/apache/zookeeper/server/quorum/Zab1_0Test.java
+--- zookeeper-3.4.6/src_/java/test/org/apache/zookeeper/server/quorum/Zab1_0Test.java	2015-04-14 22:07:14.464000000 +0200
++++ zookeeper-3.4.6/src/java/test/org/apache/zookeeper/server/quorum/Zab1_0Test.java	2015-04-14 22:07:18.728000000 +0200
+@@ -80,6 +80,9 @@
+ 
+     private static final Logger LOG = LoggerFactory.getLogger(Zab1_0Test.class);
+ 
++    private static final File testData = new File(
++            System.getProperty("test.data.dir", "build/test/data"));
++
+     private static final class LeadThread extends Thread {
+         private final Leader leader;
+ 
+@@ -149,7 +152,7 @@
+     }
+     @Test
+     public void testLeaderInConnectingFollowers() throws Exception {    
+-        File tmpDir = File.createTempFile("test", "dir");
++        File tmpDir = File.createTempFile("test", "dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         Leader leader = null;
+@@ -203,7 +206,7 @@
+         
+     @Test
+     public void testLastAcceptedEpoch() throws Exception {    
+-        File tmpDir = File.createTempFile("test", "dir");
++        File tmpDir = File.createTempFile("test", "dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         Leader leader = null;
+@@ -241,7 +244,7 @@
+         
+     @Test
+     public void testLeaderInElectingFollowers() throws Exception {    
+-        File tmpDir = File.createTempFile("test", "dir");
++        File tmpDir = File.createTempFile("test", "dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         Leader leader = null;
+@@ -348,7 +351,7 @@
+         Socket pair[] = getSocketPair();
+         Socket leaderSocket = pair[0];
+         Socket followerSocket = pair[1];
+-        File tmpDir = File.createTempFile("test", "dir");
++        File tmpDir = File.createTempFile("test", "dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         LeadThread leadThread = null;
+@@ -390,7 +393,7 @@
+         Socket pair[] = getSocketPair();
+         Socket leaderSocket = pair[0];
+         Socket followerSocket = pair[1];
+-        File tmpDir = File.createTempFile("test", "dir");
++        File tmpDir = File.createTempFile("test", "dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         LeadThread leadThread = null;
+@@ -457,7 +460,7 @@
+     
+     
+     public void testFollowerConversation(FollowerConversation conversation) throws Exception {
+-        File tmpDir = File.createTempFile("test", "dir");
++        File tmpDir = File.createTempFile("test", "dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         Thread followerThread = null;
+@@ -509,7 +512,7 @@
+     }
+ 
+     public void testObserverConversation(ObserverConversation conversation) throws Exception {
+-        File tmpDir = File.createTempFile("test", "dir");
++        File tmpDir = File.createTempFile("test", "dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         Thread observerThread = null;
+@@ -629,7 +632,7 @@
+             @Override
+             public void converseWithFollower(InputArchive ia, OutputArchive oa,
+                     Follower f) throws Exception {
+-                File tmpDir = File.createTempFile("test", "dir");
++                File tmpDir = File.createTempFile("test", "dir", testData);
+                 tmpDir.delete();
+                 tmpDir.mkdir();
+                 File logDir = f.fzk.getTxnLogFactory().getDataDir().getParentFile();
+@@ -757,7 +760,7 @@
+             @Override
+             public void converseWithFollower(InputArchive ia, OutputArchive oa,
+                     Follower f) throws Exception {
+-                File tmpDir = File.createTempFile("test", "dir");
++                File tmpDir = File.createTempFile("test", "dir", testData);
+                 tmpDir.delete();
+                 tmpDir.mkdir();
+                 File logDir = f.fzk.getTxnLogFactory().getDataDir().getParentFile();
+@@ -995,7 +998,7 @@
+             @Override
+             public void converseWithObserver(InputArchive ia, OutputArchive oa,
+                     Observer o) throws Exception {
+-                File tmpDir = File.createTempFile("test", "dir");
++                File tmpDir = File.createTempFile("test", "dir", testData);
+                 tmpDir.delete();
+                 tmpDir.mkdir();
+                 File logDir = o.zk.getTxnLogFactory().getDataDir().getParentFile();
+@@ -1413,7 +1416,7 @@
+ 
+     @Test
+     public void testInitialAcceptedCurrent() throws Exception {
+-        File tmpDir = File.createTempFile("test", ".dir");
++        File tmpDir = File.createTempFile("test", ".dir", testData);
+         tmpDir.delete();
+         tmpDir.mkdir();
+         try {

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/common/zookeeper/patch3-ZOOKEEPER-2064.diff
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/common/zookeeper/patch3-ZOOKEEPER-2064.diff b/bigtop-packages/src/common/zookeeper/patch3-ZOOKEEPER-2064.diff
new file mode 100644
index 0000000..56003c8
--- /dev/null
+++ b/bigtop-packages/src/common/zookeeper/patch3-ZOOKEEPER-2064.diff
@@ -0,0 +1,121 @@
+diff -ur zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/Log4JSource.java zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/Log4JSource.java
+--- zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/Log4JSource.java	2015-04-14 22:26:36.528000000 +0200
++++ zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/Log4JSource.java	2015-04-14 22:26:41.896000000 +0200
+@@ -351,11 +351,21 @@
+ 		
+ 		LogIterator iter = s.iterator(starttime, endtime);
+ 		System.out.println(iter);
++		try {
++		  iter.close();
++		} catch (IOException ioe) {
++		  System.out.println(ioe.getMessage());
++		}
+ 	    }; };
+ 	    Thread t2 = new Thread() { public void run () { 
+ 		
+ 		LogIterator iter = s.iterator(starttime, endtime);
+ 		System.out.println(iter);
++		try {
++		  iter.close();
++		} catch (IOException ioe) {
++		  System.out.println(ioe.getMessage());
++		}
+ 	    }; };
+ 	    Thread t3 = new Thread() { public void run () { 
+ 		
+diff -ur zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/RandomAccessFileReader.java zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/RandomAccessFileReader.java
+--- zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/RandomAccessFileReader.java	2015-04-14 22:26:36.528000000 +0200
++++ zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/RandomAccessFileReader.java	2015-04-14 22:26:41.896000000 +0200
+@@ -324,5 +324,6 @@
+ 	System.out.println(f.readLine());
+ 	f.seek(pos2);
+ 	System.out.println(f.readLine());
++	f.close();
+     }
+ };
+diff -ur zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/NumEvents.java zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/NumEvents.java
+--- zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/NumEvents.java	2015-04-14 22:26:36.528000000 +0200
++++ zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/NumEvents.java	2015-04-14 22:26:41.896000000 +0200
+@@ -81,6 +81,7 @@
+ 	if (LOG.isDebugEnabled()) {
+ 	    LOG.debug("handle(start= " + starttime + ", end=" + endtime + ", numEntries=" + size +")");
+ 	}
++	iter.close();
+ 	return JSONValue.toJSONString(data);
+     }
+ }
+diff -ur zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/StaticContent.java zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/StaticContent.java
+--- zookeeper-3.4.6/src_/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/StaticContent.java	2015-04-14 22:26:36.528000000 +0200
++++ zookeeper-3.4.6/src/contrib/loggraph/src/java/org/apache/zookeeper/graph/servlets/StaticContent.java	2015-04-14 22:26:41.896000000 +0200
+@@ -39,9 +39,12 @@
+ 	    response.setStatus(HttpServletResponse.SC_NOT_FOUND);
+ 	    return;
+ 	}
+-	
+-	while (resource.available() > 0) {
++	try {
++	  while (resource.available() > 0) {
+ 	    response.getWriter().write(resource.read());
++	  }
++	} finally {
++	  resource.close();
+ 	}
+ 	//        response.setContentType("text/plain;charset=utf-8");
+         response.setStatus(HttpServletResponse.SC_OK);
+diff -ur zookeeper-3.4.6/src_/contrib/rest/src/java/org/apache/zookeeper/server/jersey/cfg/RestCfg.java zookeeper-3.4.6/src/contrib/rest/src/java/org/apache/zookeeper/server/jersey/cfg/RestCfg.java
+--- zookeeper-3.4.6/src_/contrib/rest/src/java/org/apache/zookeeper/server/jersey/cfg/RestCfg.java	2015-04-14 22:26:36.532000000 +0200
++++ zookeeper-3.4.6/src/contrib/rest/src/java/org/apache/zookeeper/server/jersey/cfg/RestCfg.java	2015-04-14 22:26:41.900000000 +0200
+@@ -36,9 +36,13 @@
+    }
+ 
+    public RestCfg(InputStream io) throws IOException {
++     try {
+        cfg.load(io);
+        extractEndpoints();
+        extractCredentials();
++     } finally {
++       io.close();
++     }
+    }
+ 
+    private void extractCredentials() {
+diff -ur zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/GenerateLoad.java zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/GenerateLoad.java
+--- zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/GenerateLoad.java	2015-04-14 22:26:36.524000000 +0200
++++ zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/GenerateLoad.java	2015-04-14 22:26:41.900000000 +0200
+@@ -699,12 +699,16 @@
+         s.getOutputStream().write("stat".getBytes());
+         BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
+         String line;
+-        while((line = br.readLine()) != null) {
++        try {
++          while((line = br.readLine()) != null) {
+             if (line.startsWith("Mode: ")) {
+-                return line.substring(6);
++              return line.substring(6);
+             }
++          }
++          return "unknown";
++        } finally {
++          s.close();
+         }
+-        return "unknown";
+     }
+ 
+     private static void doUsage() {
+diff -ur zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java
+--- zookeeper-3.4.6/src_/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java	2015-04-14 22:26:36.524000000 +0200
++++ zookeeper-3.4.6/src/java/systest/org/apache/zookeeper/test/system/QuorumPeerInstance.java	2015-04-14 22:26:41.900000000 +0200
+@@ -67,7 +67,12 @@
+             Properties p;
+             if (zkDirs.exists()) {
+                 p = new Properties();
+-                p.load(new FileInputStream(zkDirs));
++                FileInputStream input = new FileInputStream(zkDirs);
++                try {
++                  p.load(input);
++                } finally {
++                  input.close();
++                }
+             } else {
+                 p = System.getProperties();
+             }

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/deb/zookeeper/compat
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/deb/zookeeper/compat b/bigtop-packages/src/deb/zookeeper/compat
index 7f8f011..ec63514 100755
--- a/bigtop-packages/src/deb/zookeeper/compat
+++ b/bigtop-packages/src/deb/zookeeper/compat
@@ -1 +1 @@
-7
+9

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/deb/zookeeper/control
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/deb/zookeeper/control b/bigtop-packages/src/deb/zookeeper/control
index c175bf6..c289825 100755
--- a/bigtop-packages/src/deb/zookeeper/control
+++ b/bigtop-packages/src/deb/zookeeper/control
@@ -17,12 +17,12 @@ Section: misc
 Priority: extra
 Maintainer: Bigtop <de...@bigtop.apache.org>
 Build-Depends: debhelper (>= 7.0.50~), autoconf, automake
-Standards-Version: 3.8.0
+Standards-Version: 3.9.6
 Homepage: http://zookeeper.apache.org/
 
 Package: zookeeper
 Architecture: all
-Depends: bigtop-utils (>= 0.7)
+Depends: adduser, bigtop-utils (>= 0.7)
 Description: A high-performance coordination service for distributed applications.
  ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.  All of these kinds of services are used in some form or another by distributed applications. Each time they are implemented there is a lot of work that goes into fixing the bugs and race conditions that are inevitable. Because of the difficulty of implementing these kinds of services, applications initially usually skimp on them ,which make them brittle in the presence of change and difficult to manage. Even when done correctly, different implementations of these services lead to management complexity when the applications are deployed.
 
@@ -40,6 +40,7 @@ Description: The Zookeeper REST server
 
 Package: zookeeper-native
 Architecture: any
+Depends: zookeeper (= ${source:Version}),  ${shlibs:Depends} 
 Description: C bindings for ZooKeeper clients
  Provides native libraries and development headers for C / C++ ZooKeeper clients. Consists of both single-threaded and multi-threaded implementations.
 

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/deb/zookeeper/rules
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/deb/zookeeper/rules b/bigtop-packages/src/deb/zookeeper/rules
index 4438d55..b3e2fde 100755
--- a/bigtop-packages/src/deb/zookeeper/rules
+++ b/bigtop-packages/src/deb/zookeeper/rules
@@ -29,7 +29,6 @@ zookeeper_pkg_name=zookeeper
 	dh $@
 
 override_dh_auto_build:
-	cp debian/ZOOKEEPER-1911.patch ./
 	bash debian/do-component-build -Divy.home=${HOME}/.ivy2
 	mkdir -p debian/tmp
 	tar cf - --exclude=debian/\* . | (cd debian/tmp && tar xf -)
@@ -46,5 +45,4 @@ override_dh_auto_install:
 	   mv debian/zookeeper/usr/lib/libzookeeper* debian/zookeeper-native/usr/lib/
 	   mv debian/zookeeper/usr/lib/zookeeper-native debian/zookeeper-native/usr/lib/
 	   mv debian/zookeeper/usr/include debian/zookeeper-native/usr/include
-	bash debian/init.d.tmpl debian/zookeeper-rest.svc deb debian/zookeeper-rest/etc/init.d/zookeeper-rest
-	dh_install -i
+	bash debian/init.d.tmpl debian/zookeeper-rest.svc deb debian/zookeeper-rest.init

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/deb/zookeeper/zookeeper-rest.postinst
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/deb/zookeeper/zookeeper-rest.postinst b/bigtop-packages/src/deb/zookeeper/zookeeper-rest.postinst
deleted file mode 100644
index 5798929..0000000
--- a/bigtop-packages/src/deb/zookeeper/zookeeper-rest.postinst
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash
-# 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.
-
-set -e
-if [ -x "/etc/init.d/zookeeper-rest" ]; then
-	update-rc.d zookeeper-rest defaults >/dev/null
-	if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
-		invoke-rc.d zookeeper-rest start || :
-	else
-		/etc/init.d/zookeeper-rest start || :
-	fi
-fi
-

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec
----------------------------------------------------------------------
diff --git a/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec b/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec
index 16d1852..b079e9c 100644
--- a/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec
+++ b/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec
@@ -78,7 +78,7 @@ Source6: zoo.cfg
 Source7: zookeeper.default
 Source8: init.d.tmpl
 Source9: zookeeper-rest.svc
-Source10: ZOOKEEPER-1911.patch
+#BIGTOP_PATCH_FILES
 BuildRequires: autoconf, automake, cppunit-devel
 Requires(pre): coreutils, /usr/sbin/groupadd, /usr/sbin/useradd
 Requires(post): %{alternatives_dep}
@@ -145,6 +145,8 @@ This package starts the zookeeper REST server on startup
 %prep
 %setup -n %{name}-%{zookeeper_base_version}
 
+#BIGTOP_PATCH_COMMANDS
+
 %build
 cp $RPM_SOURCE_DIR/ZOOKEEPER-1911.patch ./
 bash %{SOURCE1}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/f0be77f4/bigtop.mk
----------------------------------------------------------------------
diff --git a/bigtop.mk b/bigtop.mk
index c42cb82..d69001e 100644
--- a/bigtop.mk
+++ b/bigtop.mk
@@ -27,8 +27,8 @@ SCALA_BASE_VERSION=$(SCALA_VERSION)
 ZOOKEEPER_NAME=zookeeper
 ZOOKEEPER_RELNOTES_NAME=Apache Zookeeper
 ZOOKEEPER_PKG_NAME=zookeeper
-ZOOKEEPER_BASE_VERSION=3.4.5
-ZOOKEEPER_PKG_VERSION=3.4.5
+ZOOKEEPER_BASE_VERSION=3.4.6
+ZOOKEEPER_PKG_VERSION=3.4.6
 ZOOKEEPER_RELEASE_VERSION=1
 ZOOKEEPER_TARBALL_DST=zookeeper-$(ZOOKEEPER_BASE_VERSION).tar.gz
 ZOOKEEPER_TARBALL_SRC=$(ZOOKEEPER_TARBALL_DST)