You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bigtop.apache.org by se...@apache.org on 2019/12/16 01:46:20 UTC

[bigtop] branch master updated: BIGTOP-3279. Bump Zookeeper to 3.4.13

This is an automated email from the ASF dual-hosted git repository.

sekikn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bigtop.git


The following commit(s) were added to refs/heads/master by this push:
     new ab82087  BIGTOP-3279. Bump Zookeeper to 3.4.13
ab82087 is described below

commit ab8208768ce93c7c5ef119779e179e86dec3ac81
Author: Kengo Seki <se...@apache.org>
AuthorDate: Sat Dec 14 23:38:01 2019 +0900

    BIGTOP-3279. Bump Zookeeper to 3.4.13
    
    Signed-off-by: Youngwoo Kim <yw...@apache.org>
---
 .../common/zookeeper/patch0-ZOOKEEPER-1897v3.diff  |  14 --
 .../common/zookeeper/patch0-ZOOKEEPER-3079.diff    |  13 ++
 .../common/zookeeper/patch1-ZOOKEEPER-1911.diff    |  25 ---
 .../common/zookeeper/patch1-ZOOKEEPER-3302.diff    | 157 ++++++++++++++++++
 .../common/zookeeper/patch2-ZOOKEEPER-1926.diff    | 177 ---------------------
 .../common/zookeeper/patch3-ZOOKEEPER-2064.diff    | 121 --------------
 .../src/common/zookeeper/patch4-removeasm.diff     |  17 --
 .../common/zookeeper/patch5-ZOOKEEPER-2594.diff    |  66 --------
 bigtop.bom                                         |   2 +-
 9 files changed, 171 insertions(+), 421 deletions(-)

diff --git a/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-1897v3.diff b/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-1897v3.diff
deleted file mode 100644
index 802647c..0000000
--- a/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-1897v3.diff
+++ /dev/null
@@ -1,14 +0,0 @@
-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);
-         }
-     }
- 
diff --git a/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-3079.diff b/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-3079.diff
new file mode 100644
index 0000000..fd78efb
--- /dev/null
+++ b/bigtop-packages/src/common/zookeeper/patch0-ZOOKEEPER-3079.diff
@@ -0,0 +1,13 @@
+diff --git a/src/c/src/zookeeper.c b/src/c/src/zookeeper.c
+index c0878648..bb454ddc 100644
+--- a/src/c/src/zookeeper.c
++++ b/src/c/src/zookeeper.c
+@@ -3478,7 +3478,7 @@ int zoo_add_auth(zhandle_t *zh,const char* scheme,const char* cert,
+ static const char* format_endpoint_info(const struct sockaddr_storage* ep)
+ {
+     static char buf[128];
+-    char addrstr[128];
++    char addrstr[INET6_ADDRSTRLEN];
+     void *inaddr;
+ #ifdef WIN32
+     char * addrstring;
diff --git a/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-1911.diff b/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-1911.diff
deleted file mode 100644
index 89579e7..0000000
--- a/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-1911.diff
+++ /dev/null
@@ -1,25 +0,0 @@
---- 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"/>
diff --git a/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-3302.diff b/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-3302.diff
new file mode 100644
index 0000000..8315fd8
--- /dev/null
+++ b/bigtop-packages/src/common/zookeeper/patch1-ZOOKEEPER-3302.diff
@@ -0,0 +1,157 @@
+From 2bb205f8d9b657891e33536ee0906c76a7f72ac2 Mon Sep 17 00:00:00 2001
+From: Enrico Olivelli <eo...@apache.org>
+Date: Sat, 9 Mar 2019 14:14:05 +0100
+Subject: [PATCH 1/4] ZOOKEEPER-3302 ZooKeeper C client does not compile on
+ Fedora 29
+
+---
+ src/c/src/cli.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/c/src/cli.c b/src/c/src/cli.c
+index 6ca4a415f9..c3c0ff8ea4 100644
+--- a/src/c/src/cli.c
++++ b/src/c/src/cli.c
+@@ -678,15 +678,15 @@ int main(int argc, char **argv) {
+     }
+     if (argc > 2) {
+       if(strncmp("cmd:",argv[2],4)==0){
+-        size_t cmdlen = strlen(argv[2]);
+-        if (cmdlen > sizeof(cmd)) {
++        size_t cmdlen = strlen(argv[2]) - 4;
++        if (cmdlen >= sizeof(cmd)) {
+           fprintf(stderr,
+                   "Command length %zu exceeds max length of %zu\n",
+                   cmdlen,
+                   sizeof(cmd));
+           return 2;
+         }
+-        strncpy(cmd, argv[2]+4, sizeof(cmd));
++        memcpy(cmd, argv[2]+4, cmdlen);
+         batchMode=1;
+         fprintf(stderr,"Batch mode: %s\n",cmd);
+       }else{
+
+From 0c909e3364fee601ec08f5e9d1fbef11637e749a Mon Sep 17 00:00:00 2001
+From: Enrico Olivelli <eo...@apache.org>
+Date: Sun, 31 Mar 2019 14:47:27 +0200
+Subject: [PATCH 2/4] ZOOKEEPER-3302 ZooKeeper C client does not compile on
+ Fedora 29
+
+---
+ src/c/src/cli.c | 46 +++++++++++++++----
+ 1 file changed, 36 insertions(+), 10 deletions(-)
+
+diff --git a/src/c/src/cli.c b/src/c/src/cli.c
+index c3c0ff8ea4..96836dfeab 100644
+--- a/src/c/src/cli.c
++++ b/src/c/src/cli.c
+@@ -649,6 +649,38 @@ void processline(char *line) {
+       zoo_add_auth(zh, line, ptr, ptr ? strlen(ptr) : 0, NULL, NULL);
+     }
+ }
++/*
++ * Look for a command in the form 'cmd:command'.
++ * Strips the prefix and copies the command in buf.
++ * Returns 0 if the argument does not start with the prefix.
++ * Returns -1 in case of error (command too long).
++ * Returns 1 in case of success.
++ *
++ */
++int handleBatchMode(char* arg, char* buf, size_t maxlen) {
++    size_t cmdlen = strlen(arg);
++    if (cmdlen < 4) {
++        // too short
++        return 0;
++    }
++    cmdlen -= 4;
++    if(strncmp("cmd:", arg, 4) != 0){
++        return 0;
++    }
++    if (cmdlen >= maxlen) {
++          fprintf(stderr,
++                  "Command length %zu exceeds max length of %zu\n",
++                  cmdlen,
++                  maxlen);
++          return -1;
++    }
++    fprintf(stderr,
++                  "Command length %zu, max length of %zu\n",
++                  cmdlen,
++                  maxlen);
++    memcpy(cmd, arg + 4, cmdlen);
++    return 1;
++}
+
+ int main(int argc, char **argv) {
+ #ifndef THREADED
+@@ -677,18 +709,12 @@ int main(int argc, char **argv) {
+         return 2;
+     }
+     if (argc > 2) {
+-      if(strncmp("cmd:",argv[2],4)==0){
+-        size_t cmdlen = strlen(argv[2]) - 4;
+-        if (cmdlen >= sizeof(cmd)) {
+-          fprintf(stderr,
+-                  "Command length %zu exceeds max length of %zu\n",
+-                  cmdlen,
+-                  sizeof(cmd));
++      int batchModeRes = handleBatchMode(argv[2], cmd, sizeof(cmd));
++      if (batchModeRes == -1) {
+           return 2;
+-        }
+-        memcpy(cmd, argv[2]+4, cmdlen);
++      } else if(batchModeRes == 1){
+         batchMode=1;
+-        fprintf(stderr,"Batch mode: %s\n",cmd);
++        fprintf(stderr,"Batch mode: '%s'\n",cmd);
+       }else{
+         clientIdFile = argv[2];
+         fh = fopen(clientIdFile, "r");
+
+From 21cb65c1c8a4884358c5a1c75489a59635379d4c Mon Sep 17 00:00:00 2001
+From: Enrico Olivelli <eo...@apache.org>
+Date: Sun, 31 Mar 2019 15:20:44 +0200
+Subject: [PATCH 3/4] Drop debug
+
+---
+ src/c/src/cli.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/src/c/src/cli.c b/src/c/src/cli.c
+index 96836dfeab..bf8fcfa216 100644
+--- a/src/c/src/cli.c
++++ b/src/c/src/cli.c
+@@ -674,10 +674,6 @@ int handleBatchMode(char* arg, char* buf, size_t maxlen) {
+                   maxlen);
+           return -1;
+     }
+-    fprintf(stderr,
+-                  "Command length %zu, max length of %zu\n",
+-                  cmdlen,
+-                  maxlen);
+     memcpy(cmd, arg + 4, cmdlen);
+     return 1;
+ }
+
+From 768ee50f657cbbaac008a6947fd4ac6fe4e6cefa Mon Sep 17 00:00:00 2001
+From: Enrico Olivelli <eo...@apache.org>
+Date: Sun, 31 Mar 2019 15:35:33 +0200
+Subject: [PATCH 4/4] add comment
+
+---
+ src/c/src/cli.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/c/src/cli.c b/src/c/src/cli.c
+index bf8fcfa216..6f443cd50e 100644
+--- a/src/c/src/cli.c
++++ b/src/c/src/cli.c
+@@ -667,6 +667,7 @@ int handleBatchMode(char* arg, char* buf, size_t maxlen) {
+     if(strncmp("cmd:", arg, 4) != 0){
+         return 0;
+     }
++    // we must leave space for the NULL terminator
+     if (cmdlen >= maxlen) {
+           fprintf(stderr,
+                   "Command length %zu exceeds max length of %zu\n",
diff --git a/bigtop-packages/src/common/zookeeper/patch2-ZOOKEEPER-1926.diff b/bigtop-packages/src/common/zookeeper/patch2-ZOOKEEPER-1926.diff
deleted file mode 100644
index a0e5e6f..0000000
--- a/bigtop-packages/src/common/zookeeper/patch2-ZOOKEEPER-1926.diff
+++ /dev/null
@@ -1,177 +0,0 @@
-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 {
diff --git a/bigtop-packages/src/common/zookeeper/patch3-ZOOKEEPER-2064.diff b/bigtop-packages/src/common/zookeeper/patch3-ZOOKEEPER-2064.diff
deleted file mode 100644
index 56003c8..0000000
--- a/bigtop-packages/src/common/zookeeper/patch3-ZOOKEEPER-2064.diff
+++ /dev/null
@@ -1,121 +0,0 @@
-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();
-             }
diff --git a/bigtop-packages/src/common/zookeeper/patch4-removeasm.diff b/bigtop-packages/src/common/zookeeper/patch4-removeasm.diff
deleted file mode 100644
index 6599617..0000000
--- a/bigtop-packages/src/common/zookeeper/patch4-removeasm.diff
+++ /dev/null
@@ -1,17 +0,0 @@
---- zookeeper-3.4.6/src/c/src/mt_adaptor.c.ORG	2015-10-05 20:50:36.662228733 +0000
-+++ zookeeper-3.4.6/src/c/src/mt_adaptor.c	2015-10-05 20:51:35.722773398 +0000
-@@ -483,13 +483,7 @@
- int32_t fetch_and_add(volatile int32_t* operand, int incr)
- {
- #ifndef WIN32
--    int32_t result;
--    asm __volatile__(
--         "lock xaddl %0,%1\n"
--         : "=r"(result), "=m"(*(int *)operand)
--         : "0"(incr)
--         : "memory");
--   return result;
-+    return __sync_fetch_and_add(operand, incr);
- #else
-     volatile int32_t result;
-     _asm
diff --git a/bigtop-packages/src/common/zookeeper/patch5-ZOOKEEPER-2594.diff b/bigtop-packages/src/common/zookeeper/patch5-ZOOKEEPER-2594.diff
deleted file mode 100644
index 1d5af01..0000000
--- a/bigtop-packages/src/common/zookeeper/patch5-ZOOKEEPER-2594.diff
+++ /dev/null
@@ -1,66 +0,0 @@
-diff -ur zookeeper-3.4.6/build.xml zookeeper-3.4.6-new/build.xml
---- zookeeper-3.4.6/build.xml	2014-02-20 10:14:08.000000000 +0000
-+++ zookeeper-3.4.6-new/build.xml	2016-10-02 08:15:52.140641227 +0000
-@@ -107,7 +107,7 @@
- 
-     <property name="ivy.version" value="2.2.0"/>
-     <property name="ivy.url"
--              value="http://repo2.maven.org/maven2/org/apache/ivy/ivy" />
-+              value="https://repo1.maven.org/maven2/org/apache/ivy/ivy" />
-     <property name="ivy.home" value="${user.home}/.ant" />
-     <property name="ivy.lib" value="${build.dir}/lib"/>
-     <property name="ivy.package.lib" value="${build.dir}/package/lib"/>
-@@ -115,7 +115,7 @@
-     <property name="ivy.jdiff.lib" value="${build.dir}/jdiff/lib"/>
-     <property name="ivysettings.xml" value="${basedir}/ivysettings.xml"/>
-     
--    <property name="mvnrepo" value="http://repo2.maven.org/maven2"/>
-+    <property name="mvnrepo" value="https://repo1.maven.org/maven2"/>
-     <property name="tsk.org" value="/org/apache/maven/maven-ant-tasks/"/>
-     <property name="ant-task.version" value="2.1.3"/>
-     <property name="ant_task_repo_url"
-Only in zookeeper-3.4.6-new/: build.xml.orig
-diff -ur zookeeper-3.4.6/ivysettings.xml zookeeper-3.4.6-new/ivysettings.xml
---- zookeeper-3.4.6/ivysettings.xml	2014-02-20 10:14:08.000000000 +0000
-+++ zookeeper-3.4.6-new/ivysettings.xml	2016-10-02 08:15:52.140641227 +0000
-@@ -18,11 +18,9 @@
- -->
- 
-   <property name="repo.maven.org"
--    value="http://repo1.maven.org/maven2/" override="false"/>
-+    value="https://repo1.maven.org/maven2/" override="false"/>
-   <property name="repo.jboss.org"
--    value="http://repository.jboss.org/nexus/content/groups/public/" override="false"/>
--  <property name="repo.sun.org"
--    value="http://download.java.net/maven/2/" override="false"/>
-+    value="https://repository.jboss.org/nexus/content/groups/public/" override="false"/>
-   <property name="maven2.pattern"
-     value="[organisation]/[module]/[revision]/[module]-[revision]"/>
-   <property name="maven2.pattern.ext" value="${maven2.pattern}.[ext]"/>
-@@ -33,13 +31,10 @@
-       pattern="${maven2.pattern.ext}" m2compatible="true"/>
-     <ibiblio name="jboss-maven2" root="${repo.jboss.org}"
-       pattern="${maven2.pattern.ext}" m2compatible="true"/>
--    <ibiblio name="sun-maven2" root="${repo.sun.org}"
--      pattern="${maven2.pattern.ext}" m2compatible="true"/>
- 
-     <chain name="default" dual="true">
-       <resolver ref="maven2"/>
-       <resolver ref="jboss-maven2"/>
--      <resolver ref="sun-maven2"/>
-     </chain>
- 
-   </resolvers>
-diff -ur zookeeper-3.4.6/src/contrib/build-contrib.xml zookeeper-3.4.6-new/src/contrib/build-contrib.xml
---- zookeeper-3.4.6/src/contrib/build-contrib.xml	2014-02-20 10:14:09.000000000 +0000
-+++ zookeeper-3.4.6-new/src/contrib/build-contrib.xml	2016-10-02 08:15:52.140641227 +0000
-@@ -43,7 +43,7 @@
- 
-   <property name="ivy.version" value="2.2.0"/>
-   <property name="ivy.url"
--            value="http://repo2.maven.org/maven2/org/apache/ivy/ivy" />
-+            value="https://repo1.maven.org/maven2/org/apache/ivy/ivy" />
-   <property name="ivy.home" value="${user.home}/.ant" />
-   <property name="ivy.lib" value="${build.dir}/lib"/>
-   <property name="ivy.test.lib" value="${build.test}/lib"/>
-Only in zookeeper-3.4.6-new/src/contrib: build-contrib.xml.orig
diff --git a/bigtop.bom b/bigtop.bom
index 8ba6779..1fe5e4a 100644
--- a/bigtop.bom
+++ b/bigtop.bom
@@ -126,7 +126,7 @@ bigtop {
       name    = 'zookeeper'
       pkg     = name
       version {
-        base  = '3.4.6'
+        base  = '3.4.13'
         pkg   = base
         release = 1
       }