Update zookeeper to 3.4.8.

Changes in 3.4.8

Bug
- std::length_error on update children
- PurgeTxnLog does not correctly purge when snapshots and logs
  are at different locations
- Several four-letter words are undocumented.
- ZK Server startup fails if there are spaces in the JAVA_HOME path
- TGT refresh time logic is wrong
- assert in setup_random
- JMX is disabled even if JMXDISABLE is false
- Deadlock shutting down zookeeper
- Update commons collections version used by tests/releaseaudit

Changes in 3.4.7

Sub-task
- ClientBase#createClient is failing frequently
- Server not coming back up in QuorumZxidSyncTest
- QuorumPeer is not shutdown in few cases
- WatcherTest#testWatchAutoResetWithPending is failing
- ZKClients are hitting KeeperException$ConnectionLossException due
  to wrong usage pattern
- testTruncationNullLog fails on windows
- Port async multi to 3.4 branch

Bug
- log all exceptions not caught by ZK threads
- large numbers of watches can cause session re-establishment to fail
- The Barrier sample code should create a EPHEMERAL znode instead
  of EPHEMERAL_SEQUENTIAL znode
- C client bug in zookeeper_init (if bad hostname is given)
- Net-ZooKeeper: Net::ZooKeeper consumes 100% cpu on wait
- C client lib doesn't build on Solaris
- getACL should only call DataTree.copyStat when passed in stat is
  not null
- adding .gitattributes to prevent CRLF and LF mismatches for source
  and text files
- PurgeTxnLog may delete data logs during roll
- Add description for pzxid in programmer's guide.
- fix windows build
- zkCli.sh can't issue a CREATE command containing spaces in the data
- Inconsistent behavior in autocreation of dataDir and dataLogDir
- ZkCli.cmd commands fail with "'java' is not recognized as an internal
  or external command"
- update all notice files, copyright, etc... with the new year - 2014
- ZK Shell/Cli not processing commands
- NullPointerException in truncate
- JDK8] Sort children for comparison in AsyncOps tests
- zkpython: invalid data in GetData for empty node
- REST contrib module does not include all required files when packaged
- Invalid manifest files due to bogus revision property value
- Apache Zookeeper logs cleartext admin passwords
- Unit tests should only use build/test/data for data
- zkServer.sh fails to read dataDir (and others) from zoo.cfg
  on Solaris 10 (grep issue, manifests as FAILED TO WRITE PID).
- ReconfigRecoveryTest.testNextConfigUnreachable is failing
- quot;src/contrib/zooinspector/NOTICE.txt" isn't complying
  to ".gitattributes" in branch-3.4
- deb - zkCli.sh, zkServer.sh and zkEnv.sh regression caused
  by ZOOKEEPER-1663
- recipes jar not included in the distribution package
- Startup order in ServerCnxnFactory-ies is wrong
- zookeeper follower fails to start after a restart immediately
  following a new epoch
- Jute compareBytes incorrect comparison index
- Yosemite build failure: htonll conflict
- Unable to delete a node when the node has no children
- Zookeeper 3.4.x and 3.5.0-alpha is not OSGi compliant
- Trace bug in NettyServerCnxnFactory
- Prevent resource leak in various classes
- Memory leak on zookeeper_close
- C client builds with incorrect error codes in VisualStudio 2010+
- jute generated allocate_* functions are not externally visible
- Allow Zookeeper version string to have underscore '_'
- JMX ObjectName is incorrect for observers
- BinaryInputArchive readString should check length before
  allocating memory
- JUnit4ZKTestRunner logs test failure for all exceptions even
  if the test method is annotated with an expected exception.
- QuorumCnxManager#receiveConnection may crash with random input
- Network issues can cause cluster to hang due to near-deadlock
- PurgeTxnLog does not correctly purge when snapshots and logs are
  at different locations
- Empty path in Set crashes server and prevents restart
- Four letter command hangs when network is slow
- stmk four-letter word fails execution at server while reading
  trace mask argument.
- License update
- JMX State from LocalPeerBean incorrect
- SimpleSysTest test cases fails
- Zookeeper is not using specified JMX port in zkEnv.sh
- Zookeeper doc creation fails on windows
- QuorumPeer loadDataBase() error message is incorrect
- compilation broken for 3.4

Improvement
- Cut down the running time of ZKDatabase corruption.
- Upload Zookeeper package to Maven Central
- Re-try DNS hostname -> IP resolution if node connection fails
- mismatched CR/LF endings in text files
- AsyncCallback.*Callback don't have any Javadoc
- Improve Thread handling
- Enable JMX remote monitoring
- Server to log underlying cause of SASL connection problems
- Improve exit log messsage of EventThread and SendThread by adding
  SessionId
- Typo in Watcher.java
- Let DataNode.getChildren() return an unmodifiable view of its
  children set
- Log type of unexpected quorum packet in learner handler loop
- Make the three-node minimum more explicit in documentation
  and on website
- Change client connect zk service timeout log level from Info
  to Warn level
This commit is contained in:
fhajny 2016-03-04 13:40:34 +00:00
parent bbdeeee168
commit b3537e5704
8 changed files with 53 additions and 116 deletions

View file

@ -1,9 +1,8 @@
# $NetBSD: Makefile,v 1.2 2015/10/13 15:03:37 fhajny Exp $
# $NetBSD: Makefile,v 1.3 2016/03/04 13:40:34 fhajny Exp $
#
.include "Makefile.common"
PKGREVISION= 1
COMMENT= Highly reliable distributed coordination server
DISTFILES= ${DEFAULT_DISTFILES} ${DISTNAME}-deps.tar.gz

View file

@ -1,13 +1,13 @@
# $NetBSD: Makefile.common,v 1.1 2015/10/09 13:59:56 fhajny Exp $
# $NetBSD: Makefile.common,v 1.2 2016/03/04 13:40:34 fhajny Exp $
#
# used by devel/libzookeeper/Makefile
# used by devel/zookeeper/Makefile
DISTNAME= zookeeper-3.4.6
DISTNAME= zookeeper-3.4.8
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_APACHE:=zookeeper/${DISTNAME}/}
MAINTAINER= filip@joyent.com
MAINTAINER?= filip@joyent.com
HOMEPAGE= http://zookeeper.apache.org/
LICENSE= apache-2.0

View file

@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.1 2015/10/09 13:59:56 fhajny Exp $
@comment $NetBSD: PLIST,v 1.2 2016/03/04 13:40:34 fhajny Exp $
bin/zkCli.sh
libexec/zkEnv.sh
sbin/zkServer.sh
@ -7,18 +7,46 @@ share/examples/zookeeper/log4j.properties
share/examples/zookeeper/zoo.cfg
share/examples/zookeeper/zookeeper-env.sh
share/zookeeper/cobertura/README.txt
share/zookeeper/contrib/ZooInspector/zookeeper-${PKGVERSION}-ZooInspector.jar
share/zookeeper/contrib/fatjar/zookeeper-${PKGVERSION}-fatjar.jar
share/zookeeper/contrib/loggraph/zookeeper-${PKGVERSION}-loggraph.jar
share/zookeeper/contrib/rest/zookeeper-${PKGVERSION}-rest.jar
share/zookeeper/contrib/ZooInspector/${PKGNAME}-ZooInspector.jar
share/zookeeper/contrib/fatjar/${PKGNAME}-fatjar.jar
share/zookeeper/contrib/loggraph/${PKGNAME}-loggraph.jar
share/zookeeper/contrib/rest/conf/keys/README
share/zookeeper/contrib/rest/conf/keys/rest.cer
share/zookeeper/contrib/rest/conf/keys/rest.jks
share/zookeeper/contrib/rest/conf/log4j.properties
share/zookeeper/contrib/rest/conf/rest.properties
share/zookeeper/contrib/rest/lib/activation-1.1.jar
share/zookeeper/contrib/rest/lib/asm-3.1.jar
share/zookeeper/contrib/rest/lib/grizzly-framework-1.9.8.jar
share/zookeeper/contrib/rest/lib/grizzly-http-1.9.8.jar
share/zookeeper/contrib/rest/lib/grizzly-http-servlet-1.9.8.jar
share/zookeeper/contrib/rest/lib/grizzly-portunif-1.9.8.jar
share/zookeeper/contrib/rest/lib/grizzly-rcm-1.9.8.jar
share/zookeeper/contrib/rest/lib/grizzly-servlet-webserver-1.9.8.jar
share/zookeeper/contrib/rest/lib/grizzly-utils-1.9.8.jar
share/zookeeper/contrib/rest/lib/jackson-core-asl-1.1.1.jar
share/zookeeper/contrib/rest/lib/jaxb-api-2.1.jar
share/zookeeper/contrib/rest/lib/jaxb-impl-2.1.12.jar
share/zookeeper/contrib/rest/lib/jersey-core-1.1.5.1.jar
share/zookeeper/contrib/rest/lib/jersey-json-1.1.5.1.jar
share/zookeeper/contrib/rest/lib/jersey-server-1.1.5.1.jar
share/zookeeper/contrib/rest/lib/jettison-1.1.jar
share/zookeeper/contrib/rest/lib/jsr311-api-1.1.1.jar
share/zookeeper/contrib/rest/lib/log4j-1.2.15.jar
share/zookeeper/contrib/rest/lib/servlet-api-2.5.jar
share/zookeeper/contrib/rest/lib/slf4j-api-1.6.1.jar
share/zookeeper/contrib/rest/lib/slf4j-log4j12-1.6.1.jar
share/zookeeper/contrib/rest/lib/stax-api-1.0-2.jar
share/zookeeper/contrib/rest/lib/stax-api-1.0.1.jar
share/zookeeper/contrib/rest/${PKGNAME}-rest.jar
share/zookeeper/jdiff/zookeeper_3.1.1.xml
share/zookeeper/jdiff/zookeeper_${PKGVERSION}-SNAPSHOT.xml
share/zookeeper/jdiff/zookeeper_${PKGVERSION}.xml
share/zookeeper/jline-0.9.94.LICENSE.txt
share/zookeeper/jline-0.9.94.jar
share/zookeeper/log4j-1.2.16.LICENSE.txt
share/zookeeper/log4j-1.2.16.jar
share/zookeeper/netty-3.7.0.Final.jar
share/zookeeper/recipes/election/${PKGNAME}-recipes-election.jar
share/zookeeper/recipes/lock/build.xml
share/zookeeper/recipes/lock/src/c/INSTALL
share/zookeeper/recipes/lock/src/c/LICENSE
@ -42,6 +70,7 @@ share/zookeeper/recipes/lock/src/java/org/apache/zookeeper/recipes/lock/ZNodeNam
share/zookeeper/recipes/lock/src/java/org/apache/zookeeper/recipes/lock/ZooKeeperOperation.java
share/zookeeper/recipes/lock/test/org/apache/zookeeper/recipes/lock/WriteLockTest.java
share/zookeeper/recipes/lock/test/org/apache/zookeeper/recipes/lock/ZNodeNameTest.java
share/zookeeper/recipes/lock/${PKGNAME}-recipes-lock.jar
share/zookeeper/recipes/queue/build.xml
share/zookeeper/recipes/queue/src/c/INSTALL
share/zookeeper/recipes/queue/src/c/LICENSE
@ -60,10 +89,12 @@ share/zookeeper/recipes/queue/src/c/tests/Util.h
share/zookeeper/recipes/queue/src/c/tests/zkServer.sh
share/zookeeper/recipes/queue/src/java/org/apache/zookeeper/recipes/queue/DistributedQueue.java
share/zookeeper/recipes/queue/test/org/apache/zookeeper/recipes/queue/DistributedQueueTest.java
share/zookeeper/recipes/queue/${PKGNAME}-recipes-queue.jar
share/zookeeper/slf4j-1.6.1.LICENSE.txt
share/zookeeper/slf4j-api-1.6.1.jar
share/zookeeper/slf4j-log4j12-1.6.1.jar
share/zookeeper/templates/conf/zoo.cfg
share/zookeeper/templates/conf/zookeeper-env.sh
share/zookeeper/zookeeper-${PKGVERSION}.jar
share/zookeeper/zookeeper-${PKGVERSION}.jar.md5
share/zookeeper/zookeeper-${PKGVERSION}.jar.sha1
share/zookeeper/${PKGNAME}.jar
share/zookeeper/${PKGNAME}.jar.md5
share/zookeeper/${PKGNAME}.jar.sha1

View file

@ -1,20 +1,16 @@
$NetBSD: distinfo,v 1.3 2015/11/03 03:29:39 agc Exp $
$NetBSD: distinfo,v 1.4 2016/03/04 13:40:34 fhajny Exp $
SHA1 (zookeeper-3.4.6-deps.tar.gz) = ca9693b0b07750930762f086643a47d74e654e29
RMD160 (zookeeper-3.4.6-deps.tar.gz) = 1ffbc12628a6956a289c77f9e2edf101d60dfe99
SHA512 (zookeeper-3.4.6-deps.tar.gz) = 68708626747ec16d87f567faaf4802c82645a60e11d16bca9260037380d9e84fccb255c6554e9fc824c190c30107022f11c532a1449db7d189ea9e03b3ecf01f
Size (zookeeper-3.4.6-deps.tar.gz) = 10560464 bytes
SHA1 (zookeeper-3.4.6.tar.gz) = 2a9e53f5990dfe0965834a525fbcad226bf93474
RMD160 (zookeeper-3.4.6.tar.gz) = d9fadf07a40a85b8fd5a7e04e7200c74fd7393ce
SHA512 (zookeeper-3.4.6.tar.gz) = 5b9a3337a7edad38d1f5d9fd4f3c0d4e439128a31890b75cf2f2e2f5f19f83ef469535ab508aa44ae28daf0185807440c45f918058c4510ca3e98adb0352ce17
Size (zookeeper-3.4.6.tar.gz) = 17699306 bytes
SHA1 (zookeeper-3.4.8-deps.tar.gz) = 9c5161ab69cc6e47d67968882582eb0a75f9269f
RMD160 (zookeeper-3.4.8-deps.tar.gz) = a8eb3b44757eadd81ca71b06925c3d9bee0f24a8
SHA512 (zookeeper-3.4.8-deps.tar.gz) = 56c05c88412fad6d632a9b5a5586ee2085d718a815d48511619bc7b77423a78fe2b87b0e259b362cb3de54c91e2ca4b0791f364cf2666062edc74f2ea28cacb3
Size (zookeeper-3.4.8-deps.tar.gz) = 11020711 bytes
SHA1 (zookeeper-3.4.8.tar.gz) = 51b61611a329294f75aed82f3a4517a4b6ff116f
RMD160 (zookeeper-3.4.8.tar.gz) = 09fe205c95a4c0ad681ffece837a37401e91fcbe
SHA512 (zookeeper-3.4.8.tar.gz) = a5f0eca3c66655e0116aeddd92af228402d3d68350b30f9400b3638ef09610d903b7c87a2bb49a5594b12a4d082048c259ba3da121c1c6da4752dd5f5812bfec
Size (zookeeper-3.4.8.tar.gz) = 22261552 bytes
SHA1 (patch-bin_zkEnv.sh) = 210b94572a221cc46898750da0a822c90708ef9f
SHA1 (patch-bin_zkServer.sh) = 5f024b604ecd27c16d6ce5be92b87f5523494ada
SHA1 (patch-build.xml) = 4a41413251c850973119b4d97b01dedc95b60727
SHA1 (patch-conf_zoo__sample.cfg) = 74885bea53e5b9b723fb1564db362a08d7b47705
SHA1 (patch-include_recordio.h) = ab07325a556eee1f6b595de241e9f7c7084c8065
SHA1 (patch-src_c_src_zookeeper.c) = 0cc9710914d2a329eb8f7d18683778f460180b72
SHA1 (patch-src_contrib_build-contrib.xml) = f9d66493d537fa0ffa383928ce715ccb99ef2f58
SHA1 (patch-src_packages_templates_conf_zookeeper-env.sh) = 5abb72f885a5ac884dfcfa480438ce82d544d489
SHA1 (patch-src_recordio.c) = 6c3082fba3d48d891276636aea400ad631fc5997
SHA1 (patch-src_zk__log.c) = 9dc6e801f53a96bf8b3ec1bac429f83a0ff2cae4

View file

@ -1,38 +0,0 @@
$NetBSD: patch-bin_zkServer.sh,v 1.1 2015/10/09 13:59:56 fhajny Exp $
Use awk instead of grep/sed, and Bash echo for better portability.
--- bin/zkServer.sh.orig 2014-02-20 10:14:08.000000000 +0000
+++ bin/zkServer.sh
@@ -81,7 +81,7 @@ fi
echo "Using config: $ZOOCFG" >&2
if [ -z "$ZOOPIDFILE" ]; then
- ZOO_DATADIR="$(grep "^[[:space:]]*dataDir" "$ZOOCFG" | sed -e 's/.*=//')"
+ ZOO_DATADIR="$(awk -F= '{ if ($1=="dataDir") print $2}' "$ZOOCFG")"
if [ ! -d "$ZOO_DATADIR" ]; then
mkdir -p "$ZOO_DATADIR"
fi
@@ -110,7 +110,7 @@ start)
-cp "$CLASSPATH" $JVMFLAGS $ZOOMAIN "$ZOOCFG" > "$_ZOO_DAEMON_OUT" 2>&1 < /dev/null &
if [ $? -eq 0 ]
then
- if /bin/echo -n $! > "$ZOOPIDFILE"
+ if echo -n $! > "$ZOOPIDFILE"
then
sleep 1
echo STARTED
@@ -161,12 +161,12 @@ restart)
;;
status)
# -q is necessary on some versions of linux where nc returns too quickly, and no stat result is output
- clientPortAddress=`grep "^[[:space:]]*clientPortAddress[^[:alpha:]]" "$ZOOCFG" | sed -e 's/.*=//'`
+ clientPortAddress=`awk -F= '{if ($1=="clientPortAddress") print $2}' "$ZOOCFG"`
if ! [ $clientPortAddress ]
then
clientPortAddress="localhost"
fi
- clientPort=`grep "^[[:space:]]*clientPort[^[:alpha:]]" "$ZOOCFG" | sed -e 's/.*=//'`
+ clientPort=`awk -F= '{if ($1=="clientPort") print $2}' "$ZOOCFG"`
STAT=`"$JAVA" "-Dzookeeper.log.dir=${ZOO_LOG_DIR}" "-Dzookeeper.root.logger=${ZOO_LOG4J_PROP}" \
-cp "$CLASSPATH" $JVMFLAGS org.apache.zookeeper.client.FourLetterWordMain \
$clientPortAddress $clientPort srvr 2> /dev/null \

View file

@ -1,16 +0,0 @@
$NetBSD: patch-include_recordio.h,v 1.1 2015/10/09 13:59:56 fhajny Exp $
SunOS has htonll since OpenSolaris.
--- src/c/include/recordio.h.orig 2014-02-20 10:14:08.000000000 +0000
+++ src/c/include/recordio.h
@@ -73,7 +73,10 @@ void close_buffer_iarchive(struct iarchi
char *get_buffer(struct oarchive *);
int get_buffer_len(struct oarchive *);
+#ifndef __sun
+/* Solaris already implements htonll */
int64_t htonll(int64_t v);
+#endif
#ifdef __cplusplus
}

View file

@ -1,21 +0,0 @@
$NetBSD: patch-src_recordio.c,v 1.1 2015/10/09 13:59:56 fhajny Exp $
SunOS has had htonll since OpenSolaris.
--- src/c/src/recordio.c.orig 2014-02-20 10:14:08.000000000 +0000
+++ src/c/src/recordio.c
@@ -80,6 +80,7 @@ int oa_serialize_int(struct oarchive *oa
priv->off+=sizeof(i);
return 0;
}
+#ifndef __sun
int64_t htonll(int64_t v)
{
int i = 0;
@@ -95,6 +96,7 @@ int64_t htonll(int64_t v)
return v;
}
+#endif
int oa_serialize_long(struct oarchive *oa, const char *tag, const int64_t *d)
{

View file

@ -1,14 +0,0 @@
$NetBSD: patch-src_zk__log.c,v 1.1 2015/10/09 13:59:56 fhajny Exp $
Needs to be cast as int.
--- src/c/src/zk_log.c.orig 2014-02-20 10:14:09.000000000 +0000
+++ src/c/src/zk_log.c
@@ -133,7 +133,7 @@ void log_message(ZooLogLevel curLevel,in
#endif
if(pid==0)pid=getpid();
#ifndef THREADED
- fprintf(LOGSTREAM, "%s:%d:%s@%s@%d: %s\n", time_now(get_time_buffer()),pid,
+ fprintf(LOGSTREAM, "%s:%d:%s@%s@%d: %s\n", time_now(get_time_buffer()),(int)pid,
dbgLevelStr[curLevel],funcName,line,message);
#else
#ifdef WIN32