[jira] [Created] (ZOOKEEPER-4043) ZooKeeper 2020 review
maoling created ZOOKEEPER-4043: -- Summary: ZooKeeper 2020 review Key: ZOOKEEPER-4043 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4043 Project: ZooKeeper Issue Type: Wish Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-4036) correct the annotation/comment about the frequency of leader's ping
maoling created ZOOKEEPER-4036: -- Summary: correct the annotation/comment about the frequency of leader's ping Key: ZOOKEEPER-4036 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4036 Project: ZooKeeper Issue Type: Improvement Reporter: maoling {code:java} // We ping twice a tick, so we only update the tick every other // iteration boolean tickSkip = true; // If not null then shutdown this leader String shutdownMessage = null; {code} >From the code, we can find it's a factual mistake. We ping half of a tick >time, not twice a tick. For example, the tickTime is 2000ms(default), we ping >every 1 s. {code:java} long start = Time.currentElapsedTime(); long cur = start; long end = start + self.tickTime / 2; while (cur < end) { wait(end - cur); cur = Time.currentElapsedTime(); } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-4035) Add a documentation about the property: zookeeper.testingonly.initialZxid
maoling created ZOOKEEPER-4035: -- Summary: Add a documentation about the property: zookeeper.testingonly.initialZxid Key: ZOOKEEPER-4035 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4035 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling {code:java} * This field allows you to override the zxid of the server. Typically * you'll want to set it to something like 0xfff0 and then * start the quorum, run some operations and see the re-election. */ String initialZxid = System.getProperty("zookeeper.testingonly.initialZxid"); if (initialZxid != null) { long zxid = Long.parseLong(initialZxid); zk.setZxid((zk.getZxid() & 0xL) | zxid); } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-4029) improve the log of FileTxnLog#append method
maoling created ZOOKEEPER-4029: -- Summary: improve the log of FileTxnLog#append method Key: ZOOKEEPER-4029 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4029 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling We found the following logs that it's very confusing {code:java} 2020-12-16 15:19:09,202 [myid:5] - WARN [SyncThread:5:FileTxnLog@275] - Current zxid 858993459201 is <= 858993459203 for -10 2020-12-16 15:19:09,202 [myid:5] - WARN [SyncThread:5:FileTxnLog@275] - Current zxid 858993459202 is <= 858993459203 for -10 2020-12-16 15:19:09,203 [myid:5] - WARN [SyncThread:5:FileTxnLog@275] - Current zxid 858993459203 is <= 858993459203 for 5 {code} The potential improvement may be: {code:java} if (hdr.getZxid() <= lastZxidSeen) { LOG.warn( "Current zxid {} is <= {} for operation {}", hdr.getZxid(), lastZxidSeen, Request.op2String(hdr.getType())); } else { lastZxidSeen = hdr.getZxid(); } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-4016) C client build issue causes the failure of CI build
maoling created ZOOKEEPER-4016: -- Summary: C client build issue causes the failure of CI build Key: ZOOKEEPER-4016 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4016 Project: ZooKeeper Issue Type: Bug Components: c client Reporter: maoling {code:java} [2020-11-23T12:01:26.250Z] [exec] libtool: compile: gcc -DHAVE_CONFIG_H -I. -I/home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c -I/home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c/include -I/home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c/tests -I/home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c/generated -DHAVE_OPENSSL_H -DHAVE_CYRUS_SASL_H -Wall -Werror -Wdeclaration-after-statement -DTHREADED -g -O2 -D_GNU_SOURCE -MT libzkmt_la-zk_log.lo -MD -MP -MF .deps/libzkmt_la-zk_log.Tpo -c /home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c/src/zk_log.c -fPIC -DPIC -o .libs/libzkmt_la-zk_log.o [2020-11-23T12:01:26.250Z] [exec] Makefile:1033: recipe for target 'libzkmt_la-zk_log.lo' failed [2020-11-23T12:01:26.250Z] [exec] In file included from /home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c/include/zookeeper_log.h:22:0, [2020-11-23T12:01:26.250Z] [exec] from /home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c/src/zk_log.c:23: [2020-11-23T12:01:26.250Z] [exec] /home/jenkins/jenkins-home/workspace/eper-precommit-github-pr_PR-1528/zookeeper-client/zookeeper-client-c/include/zookeeper.h:36:10: fatal error: openssl/ossl_typ.h: No such file or directory [2020-11-23T12:01:26.250Z] [exec] #include [2020-11-23T12:01:26.250Z] [exec] ^~~~ [2020-11-23T12:01:26.250Z] [exec] compilation terminated. [2020-11-23T12:01:26.250Z] [exec] make: *** [libzkmt_la-zk_log.lo] Error 1 {code} URL: https://ci-hadoop.apache.org/blue/organizations/jenkins/zookeeper-precommit-github-pr/detail/PR-1528/4/pipeline -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-4015) Flaky test: RequestPathMetricsCollectorTest.testMultiThreadPerf
maoling created ZOOKEEPER-4015: -- Summary: Flaky test: RequestPathMetricsCollectorTest.testMultiThreadPerf Key: ZOOKEEPER-4015 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4015 Project: ZooKeeper Issue Type: Bug Reporter: maoling Fix For: 3.7.0, 3.5.9 {code:java} [2020-11-22T07:40:12.646Z] [ERROR] Failures: [2020-11-22T07:40:12.646Z] [ERROR] RequestPathMetricsCollectorTest.testMultiThreadPerf:448 expected: but was: [2020-11-22T07:40:12.646Z] [INFO] [2020-11-22T07:40:12.646Z] [ERROR] Tests run: 2880, Failures: 1, Errors: 0, Skipped: 4 [2020-11-22T07:40:12.646Z] [INFO] [2020-11-22T07:40:14.238Z] [INFO] --- {code} URL: https://ci-hadoop.apache.org/blue/organizations/jenkins/zookeeper-precommit-github-pr/detail/PR-1527/2/pipeline -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-4007) A typo in the ZKUtil#validateFileInput method
maoling created ZOOKEEPER-4007: -- Summary: A typo in the ZKUtil#validateFileInput method Key: ZOOKEEPER-4007 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4007 Project: ZooKeeper Issue Type: Bug Components: server Reporter: maoling Here direcory is a typo {code:java} if (file.isDirectory()) { return "'" + file.getAbsolutePath() + "' is a direcory. it must be a file."; } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-4000) use the computeIfAbsent to simplify the Leader#processSync method
maoling created ZOOKEEPER-4000: -- Summary: use the computeIfAbsent to simplify the Leader#processSync method Key: ZOOKEEPER-4000 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4000 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Fix For: 3.7.0 Look at the *Leader#processSync* method: {code:java} public synchronized void processSync(LearnerSyncRequest r) { if (outstandingProposals.isEmpty()) { sendSync(r); } else { List l = pendingSyncs.get(lastProposed); if (l == null) { l = new ArrayList(); } l.add(r); pendingSyncs.put(lastProposed, l); } } {code} we can use the *computeIfAbsent* to make the code more clean and elegant -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3999) zkTxnLogToolkit tool should have a user-password authentication to avoid data security issues
maoling created ZOOKEEPER-3999: -- Summary: zkTxnLogToolkit tool should have a user-password authentication to avoid data security issues Key: ZOOKEEPER-3999 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3999 Project: ZooKeeper Issue Type: Improvement Components: scripts Reporter: maoling Assignee: maoling we now can use _*zkTxnLogToolkit.sh*_ to view data directly. For example: {code:java} ./zkTxnLogToolkit.sh /data/software/zookeeper/zkdataLog/version-2/log.fa9c0001 2020-11-12 21:43:00,864 [myid:] - INFO [main:ZooKeeperServer@1461] - zookeeper.flushDelay=0 2020-11-12 21:43:00,864 [myid:] - INFO [main:ZooKeeperServer@1470] - zookeeper.maxWriteQueuePollTime=0 2020-11-12 21:43:00,864 [myid:] - INFO [main:ZooKeeperServer@1479] - zookeeper.maxBatchSize=1000 2020-11-12 21:43:00,864 [myid:] - INFO [main:ZooKeeperServer@243] - zookeeper.intBufferStartingSizeBytes = 1024 20-3-30 下午06时35分11秒 session 0x100019a8e49 cxid 0x0 zxid 0xfa9c0001 createSession 3 20-3-30 下午06时35分22秒 session 0x100019a8e49 cxid 0x1 zxid 0xfa9c0002 create /03-30, bob,[31,s{'world,'anyone} ],false,12012 20-3-30 下午06时40分29秒 session 0x100019a8e49 cxid 0x2 zxid 0xfa9c0003 create /03-30-2, alice,[31,s{'world,'anyone} ],false,12013 EOF reached after 3 txns. EOF reached after 3 txns.{code} That is a rash move to make the ACL mechanism meaningless. Users can view the znode data at will. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3996) Flaky test: ReadOnlyModeTest.testConnectionEvents
maoling created ZOOKEEPER-3996: -- Summary: Flaky test: ReadOnlyModeTest.testConnectionEvents Key: ZOOKEEPER-3996 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3996 Project: ZooKeeper Issue Type: Bug Components: tests Reporter: maoling We noticed that the unit case: ReadOnlyModeTest.testConnectionEvents has failed frequently when building the CI. The link is: https://ci-hadoop.apache.org/blue/organizations/jenkins/zookeeper-precommit-github-pr/detail/PR-1527/1/pipeline/ {code:java} [2020-11-06T13:21:34.527Z] [INFO] Running org.apache.zookeeper.RemoveWatchesTest [2020-11-06T13:21:36.136Z] [INFO] Tests run: 352, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 14.475 s - in org.apache.zookeeper.common.X509UtilTest [2020-11-06T13:22:06.176Z] [INFO] Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 414.867 s - in org.apache.zookeeper.server.quorum.QuorumSSLTest [2020-11-06T13:22:41.949Z] [INFO] Tests run: 46, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 66.898 s - in org.apache.zookeeper.RemoveWatchesTest [2020-11-06T13:22:41.949Z] [INFO] [2020-11-06T13:22:41.949Z] [INFO] Results: [2020-11-06T13:22:41.949Z] [INFO] [2020-11-06T13:22:41.949Z] [ERROR] Errors: [2020-11-06T13:22:41.949Z] [ERROR] ReadOnlyModeTest.testConnectionEvents:205 » Timeout Failed to connect in read-... [2020-11-06T13:22:41.949Z] [INFO] [2020-11-06T13:22:41.949Z] [ERROR] Tests run: 2863, Failures: 0, Errors: 1, Skipped: 4 [2020-11-06T13:22:41.949Z] [INFO] [2020-11-06T13:22:43.552Z] [INFO] [2020-11-06T13:22:43.552Z] [INFO] Reactor Summary for Apache ZooKeeper 3.7.0-SNAPSHOT:{code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3992) addWatch api should check the null watch
maoling created ZOOKEEPER-3992: -- Summary: addWatch api should check the null watch Key: ZOOKEEPER-3992 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3992 Project: ZooKeeper Issue Type: Bug Components: java client Reporter: maoling Fix For: 3.7.0 {code:java} public void addWatch(String basePath, Watcher watcher, AddWatchMode mode) throws KeeperException, InterruptedException { PathUtils.validatePath(basePath); String serverPath = prependChroot(basePath); RequestHeader h = new RequestHeader(); h.setType(ZooDefs.OpCode.addWatch); AddWatchRequest request = new AddWatchRequest(serverPath, mode.getMode()); ReplyHeader r = cnxn.submitRequest(h, request, new ErrorResponse(), {code} we need to _*validateWatcher(watcher)*_ to ** avoid the case: {code:java} zk.addWatch("/a/b", null, PERSISTENT_RECURSIVE); {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3982) export ZooKeeper version as prometheus metric
maoling created ZOOKEEPER-3982: -- Summary: export ZooKeeper version as prometheus metric Key: ZOOKEEPER-3982 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3982 Project: ZooKeeper Issue Type: New Feature Components: metric system Reporter: maoling Fix For: 3.7.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3976) write a script to encapsulate DigestAuthenticationProvider as a tool to generate the digest with algorithm users appoint
maoling created ZOOKEEPER-3976: -- Summary: write a script to encapsulate DigestAuthenticationProvider as a tool to generate the digest with algorithm users appoint Key: ZOOKEEPER-3976 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3976 Project: ZooKeeper Issue Type: New Feature Components: scripts, server Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3926) make the rc constant in the ClientCnxn
maoling created ZOOKEEPER-3926: -- Summary: make the rc constant in the ClientCnxn Key: ZOOKEEPER-3926 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3926 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Lots of codes about the result code in the callback(ClientCnxn.EventThread#processEvent) is hardcode. For example: {code:java} } else if (p.response instanceof GetACLResponse) { ACLCallback cb = (ACLCallback) p.cb; GetACLResponse rsp = (GetACLResponse) p.response; if (rc == 0) { cb.processResult(rc, clientPath, p.ctx, rsp.getAcl(), rsp.getStat()); } else { cb.processResult(rc, clientPath, p.ctx, null, null); } }{code} This makes the codes difficult to maintain. What we want looks like this: {code:java} if (rc == Code.OK.intValue()) { } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3907) add a documentation on the alert things about metrics
maoling created ZOOKEEPER-3907: -- Summary: add a documentation on the alert things about metrics Key: ZOOKEEPER-3907 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3907 Project: ZooKeeper Issue Type: Bug Components: documentation Reporter: maoling Assignee: maoling Give users some suggestions about alerting on their ZooKeeper metrics system. What metrics are critical and deserve special attention? What are the recommended value? -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3892) client cannot connect to server when we do a large scala benchmark test
maoling created ZOOKEEPER-3892: -- Summary: client cannot connect to server when we do a large scala benchmark test Key: ZOOKEEPER-3892 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3892 Project: ZooKeeper Issue Type: Bug Components: server Reporter: maoling We have three servers(s1[follower], s2[Leader], s3[follower]), after doing a large scala benchmark test, the client cannot connect to server anymore. No any resource panic(CPU, memory) {code:java} # connect to s2[Leader] 2020-07-17 17:44:56,767 [myid:127.0.0.1:2182] - WARN [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1278] - Session 0x0 for sever localhost/127.0.0.1:2182, Closing socket connection. Attempting reconnect except it is a SessionExpiredException.2020-07-17 17:44:56,767 [myid:127.0.0.1:2182] - WARN [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1278] - Session 0x0 for sever localhost/127.0.0.1:2182, Closing socket connection. Attempting reconnect except it is a SessionExpiredException.org.apache.zookeeper.ClientCnxn$SessionTimeoutException: Client session timed out, have not heard from server in 3ms for session id 0x0 at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1236)2020-07-17 17:44:58,519 [myid:127.0.0.1:2182] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1159] - Opening socket connection to server localhost/127.0.0.1:2182.2020-07-17 17:44:58,519 [myid:127.0.0.1:2182] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1161] - SASL config status: Will not attempt to authenticate using SASL (unknown error)2020-07-17 17:44:58,519 [myid:127.0.0.1:2182] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@993] - Socket connection established, initiating session, client: /127.0.0.1:64219, server: localhost/127.0.0.1:21822020-07-17 17:45:28,522 [myid:127.0.0.1:2182] - WARN [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1235] - Client session timed out, have not heard from server in 30003ms for session id 0x02020-07-17 17:45:28,522 [myid:127.0.0.1:2182] - WARN [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1278] - Session 0x0 for sever localhost/127.0.0.1:2182, Closing socket connection. Attempting reconnect except it is a SessionExpiredException.org.apache.zookeeper.ClientCnxn$SessionTimeoutException: Client session timed out, have not heard from server in 30003ms for session id 0x0 at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1236)2020-07-17 17:45:30,115 [myid:127.0.0.1:2182] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1159] - Opening socket connection to server localhost/127.0.0.1:2182.2020-07-17 17:45:30,115 [myid:127.0.0.1:2182] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1161] - SASL config status: Will not attempt to authenticate using SASL (unknown error)2020-07-17 17:45:30,116 [myid:127.0.0.1:2182] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@993] - Socket connection established, initiating session, client: /127.0.0.1:64223, server: localhost/127.0.0.1:2182 [zk: 127.0.0.1:2182(CONNECTING) 0] ./zkServer.sh status JMX enabled by default Using config: /data/software/zookeeper/zookeeper-two/bin/../conf/zoo.cfg Mode: leader {code} However, we cannot connect to s2,s3, but we can connect to s1 and create znodes {code:java} [zk: 127.0.0.1:2181(CONNECTED) 0] getAllChildrenNumber / 1645338 [zk: 127.0.0.1:2181(CONNECTED) 1] create /test-666 Created /test-666 [zk: 127.0.0.1:2181(CONNECTED) 2] create /test-777 "777" Created /test-777 [zk: 127.0.0.1:2181(CONNECTED) 3] get /test-777 777 [zk: 127.0.0.1:2181(CONNECTED) 4] create /test-888 "88" Created /test-888 [zk: 127.0.0.1:2181(CONNECTED) 5] get /test-888 88 {code} Attach the logs for debugging -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3884) zkServer.sh status doesn't work when we do a large scale benchmark test
maoling created ZOOKEEPER-3884: -- Summary: zkServer.sh status doesn't work when we do a large scale benchmark test Key: ZOOKEEPER-3884 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3884 Project: ZooKeeper Issue Type: Bug Components: server Reporter: maoling Assignee: maoling {code:java} [root@zk-test001 bin]# ./zkServer.sh status /usr/bin/java ZooKeeper JMX enabled by default Using config: /data/software/apache-zookeeper-3.6.1-bin/bin/../conf/zoo.cfg Client port found: 2181. Client address: localhost. Error contacting service. It is probably not running.{code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3880) Add a script: zkCleanup.cmd to clean the transaction logs and snapshots in Windows OS
maoling created ZOOKEEPER-3880: -- Summary: Add a script: zkCleanup.cmd to clean the transaction logs and snapshots in Windows OS Key: ZOOKEEPER-3880 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3880 Project: ZooKeeper Issue Type: New Feature Reporter: maoling We already have a a script: zkCleanup.sh to clean the transaction logs and snapshots in Linux OS, we also need a same one for Windows OS -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3873) ClientCnxnSocketNIO#enableWrite throws NullPointerException
maoling created ZOOKEEPER-3873: -- Summary: ClientCnxnSocketNIO#enableWrite throws NullPointerException Key: ZOOKEEPER-3873 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3873 Project: ZooKeeper Issue Type: Bug Components: java client Reporter: maoling Fix For: 3.7.0 I also attach the client side logs here {code:java} org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /bench-watch/12318org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /bench-watch/123182020-06-27 13:42:31,898 [myid:127.0.0.1:2181] - WARN [pool-1-thread-11-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1278] - Session 0x1001a2fab59004c for sever localhost/127.0.0.1:2181, Closing socket connection. Attempting reconnect except it is a SessionExpiredException.java.lang.NullPointerException at org.apache.zookeeper.ClientCnxnSocketNIO.enableWrite(ClientCnxnSocketNIO.java:377) at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:353) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1268) at org.apache.zookeeper.KeeperException.create(KeeperException.java:102) at org.apache.zookeeper.KeeperException.create(KeeperException.java:54) at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1856) {code} {code:java} 2020-06-27 13:51:04,334 [myid:] - ERROR [pool-1-thread-12:ClientCnxn@1590] - Timeout error occurred for the packet 'clientPath:null serverPath:null finished:false header:: 13886,3 replyHeader:: 0,0,0 request:: '/bench-watch/12815,T response:: '.2020-06-27 13:51:04,334 [myid:] - ERROR [pool-1-thread-12:ClientCnxn@1590] - Timeout error occurred for the packet 'clientPath:null serverPath:null finished:false header:: 13886,3 replyHeader:: 0,0,0 request:: '/bench-watch/12815,T response:: '.2020-06-27 13:51:04,334 [myid:] - ERROR [pool-1-thread-29:ClientCnxn@1590] - Timeout error occurred for the packet 'clientPath:null serverPath:null finished:false header:: 13395,3 replyHeader:: 0,0,0 request:: '/bench-watch/12331,T response:: '.2020-06-27 13:51:04,335 [myid:127.0.0.1:2181] - WARN [pool-1-thread-12-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1278] - Session 0x1001a2fab59003d for sever localhost/127.0.0.1:2181, Closing socket connection. Attempting reconnect except it is a SessionExpiredException.java.nio.channels.CancelledKeyException at sun.nio.ch.SelectionKeyImpl.ensureValid(SelectionKeyImpl.java:73) at sun.nio.ch.SelectionKeyImpl.interestOps(SelectionKeyImpl.java:77) at org.apache.zookeeper.ClientCnxnSocketNIO.enableWrite(ClientCnxnSocketNIO.java:377) at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:353) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1268)2020-06-27 13:51:04,336 [myid:127.0.0.1:2181] - INFO [pool-1-thread-39-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1159] - Opening socket connection to server localhost/127.0.0.1:2181.2020-06-27 13:51:04,336 [myid:127.0.0.1:2181] - INFO [pool-1-thread-39-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1161] - SASL config status: Will not attempt to authenticate using SASL (unknown error)2020-06-27 13:51:04,337 [myid:127.0.0.1:2181] - INFO [pool-1-thread-39-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@993] - Socket connection established, initiating session, client: /127.0.0.1:62205, server: localhost/127.0.0.1:21812020-06-27 13:51:04,339 [myid:127.0.0.1:2181] - INFO [pool-1-thread-39-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1426] - Session establishment complete on server localhost/127.0.0.1:2181, session id = 0x1001a2fab59005a, negotiated timeout = 4 {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3869) add a documentation about the client property: zookeeper.request.timeout
maoling created ZOOKEEPER-3869: -- Summary: add a documentation about the client property: zookeeper.request.timeout Key: ZOOKEEPER-3869 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3869 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling We can doc the property in the _*Client Configuration Parameters*_ page {code:java} Client Configuration Parameters The following list contains configuration properties for the Java client. You can set any of these properties using Java system properties. For server properties, please check the [Server configuration section of the Admin Guide](zookeeperAdmin.html#sc_configuration). The ZooKeeper Wiki also has useful pages about [ZooKeeper SSL support](https://cwiki.apache.org/confluence/display/ZOOKEEPER/ZooKeeper+SSL+User+Guide), and [SASL authentication for ZooKeeper](https://cwiki.apache.org/confluence/display/ZOOKEEPER/ZooKeeper+and+SASL). {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3849) improve the all logs with a necessary time unit at the start up of server
maoling created ZOOKEEPER-3849: -- Summary: improve the all logs with a necessary time unit at the start up of server Key: ZOOKEEPER-3849 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3849 Project: ZooKeeper Issue Type: Improvement Reporter: maoling - I found the following logs at the start-up of server which needs a time unit(maybe most is *ms*) - This patch should check all the start-up logs which should have time unit. {code:java} 2020-05-24 14:06:09,097 [myid:3] - INFO [QuorumPeer[myid=3](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):ZooKeeperServer@332] - Created server with tickTime 2000 minSessionTimeout 4000 maxSessionTimeout 4 clientPortListenBacklog -1 datadir ../../zkdataLog3/version-2 snapdir ../../zkdata3/version-2 2020-05-24 14:05:56,881 [myid:2] - INFO [main:ZooKeeperServer@1446] - zookeeper.flushDelay=0 2020-05-24 14:05:56,881 [myid:2] - INFO [main:ZooKeeperServer@1455] - zookeeper.maxWriteQueuePollTime=0 2020-05-24 14:06:09,050 [myid:3] - INFO [main:FastLeaderElection@88] - zookeeper.fastleader.minNotificationInterval=200 2020-05-24 14:06:09,050 [myid:3] - INFO [main:FastLeaderElection@90] - zookeeper.fastleader.maxNotificationInterval=6 2020-05-24 14:06:10,050 [myid:3] - INFO [QuorumPeer[myid=3](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):RequestThrottler@75] - zookeeper.request_throttler.shutdownTimeout = 1 {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3841) remove useless codes in the Leader.java
maoling created ZOOKEEPER-3841: -- Summary: remove useless codes in the Leader.java Key: ZOOKEEPER-3841 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3841 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling - There are some useless code in the Leader.java which were comment out. - Pls recheck all the things in this class to clear up e.g: {code:java} // Everything is a go, simply start counting the ticks // WARNING: I couldn't find any wait statement on a synchronized // block that would be notified by this notifyAll() call, so // I commented it out //synchronized (this) { //notifyAll(); //} {code} {code:java} //turnOffFollowers(); {code} {code:java} //LOG.warn("designated leader is: " + designatedLeader); {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3823) Add a benchmark tool for testing watch feature performance
maoling created ZOOKEEPER-3823: -- Summary: Add a benchmark tool for testing watch feature performance Key: ZOOKEEPER-3823 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3823 Project: ZooKeeper Issue Type: New Feature Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3821) improve getting snapCount and globalOutstandingLimit from System's Property
maoling created ZOOKEEPER-3821: -- Summary: improve getting snapCount and globalOutstandingLimit from System's Property Key: ZOOKEEPER-3821 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3821 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling We have System.getProperty(SNAP_COUNT, defaultValue), we don't need to set the default value in an exception, that's not elegant {code:java} public static int getSnapCount() { String sc = System.getProperty(SNAP_COUNT); try { int snapCount = Integer.parseInt(sc);// snapCount must be 2 or more. See org.apache.zookeeper.server.SyncRequestProcessor if (snapCount < 2) { LOG.warn("SnapCount should be 2 or more. Now, snapCount is reset to 2"); snapCount = 2; } return snapCount; } catch (Exception e) { return 10; } }public int getGlobalOutstandingLimit() { String sc = System.getProperty(GLOBAL_OUTSTANDING_LIMIT); int limit; try { limit = Integer.parseInt(sc); } catch (Exception e) { limit = 1000; } return limit; } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3809) write a documentation about published academic papers about ZooKeeper
maoling created ZOOKEEPER-3809: -- Summary: write a documentation about published academic papers about ZooKeeper Key: ZOOKEEPER-3809 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3809 Project: ZooKeeper Issue Type: New Feature Components: documentation Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3808) correct the documentation about digest.enabled
maoling created ZOOKEEPER-3808: -- Summary: correct the documentation about digest.enabled Key: ZOOKEEPER-3808 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3808 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3807) fix the bad format when website pages build due to bash marker
maoling created ZOOKEEPER-3807: -- Summary: fix the bad format when website pages build due to bash marker Key: ZOOKEEPER-3807 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3807 Project: ZooKeeper Issue Type: Improvement Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3800) improve the log printing the address when QuorumCnxManager#ListenerHandler's port binds
maoling created ZOOKEEPER-3800: -- Summary: improve the log printing the address when QuorumCnxManager#ListenerHandler's port binds Key: ZOOKEEPER-3800 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3800 Project: ZooKeeper Issue Type: Improvement Reporter: maoling Fix For: 3.7.0 1. {code:java} LOG.error("Exception while listening", e);{code} At least, the log should print the address to help me find what port has conflicted in my host 2. The stack trace is following: {code:java} 2020-04-17 18:49:24,757 [myid:1] - INFO [main:ZKAuditProvider@42] - ZooKeeper audit is disabled. 2020-04-17 18:49:24,758 [myid:1] - ERROR [ListenerHandler-/127.0.0.1:3888:QuorumCnxManager$Listener$ListenerHandler@1093] - Exception while listening java.net.BindException: Address already in use (Bind failed) at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387) at java.net.ServerSocket.bind(ServerSocket.java:375) at java.net.ServerSocket.bind(ServerSocket.java:329) at org.apache.zookeeper.server.quorum.QuorumCnxManager$Listener$ListenerHandler.createNewServerSocket(QuorumCnxManager.java:1134) at org.apache.zookeeper.server.quorum.QuorumCnxManager$Listener$ListenerHandler.acceptConnections(QuorumCnxManager.java:1064) at org.apache.zookeeper.server.quorum.QuorumCnxManager$Listener$ListenerHandler.run(QuorumCnxManager.java:1033) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 2020-04-17 18:49:24,764 [myid:1] - INFO [QuorumPeer[myid=1](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):QuorumPeer@1371] - LOOKING 2020-04-17 18:49:24,765 [myid:1] - INFO [QuorumPeer[myid=1](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):FastLeaderElection@944] - New election. My id = 1, proposed zxid=0xfab2 {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3799) rename CommitProcessor to CommitRequestProcessor
maoling created ZOOKEEPER-3799: -- Summary: rename CommitProcessor to CommitRequestProcessor Key: ZOOKEEPER-3799 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3799 Project: ZooKeeper Issue Type: Improvement Reporter: maoling All the requestProcessors which had implemented interface RequestProcessor named xxxRequestProcessor, but CommitProcessor is an exception. we should rename CommitProcessor to CommitRequestProcessor for the naming uniformity. # also refactor the related documentations and javaDocs # against master, also the branch3.5 and branch3.6 for the uniformity -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3798) remove the useless code in the ProposalRequestProcessor#processRequest
maoling created ZOOKEEPER-3798: -- Summary: remove the useless code in the ProposalRequestProcessor#processRequest Key: ZOOKEEPER-3798 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3798 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Fix For: 3.7.0 remove the following useless codes in the ProposalRequestProcessor#processRequest {code:java} public void processRequest(Request request) throws RequestProcessorException { // LOG.warn("Ack>>> cxid = " + request.cxid + " type = " + // request.type + " id = " + request.sessionId); // request.addRQRec(">prop"); {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3789) fix the build warnings about useless @return found by IDEA
maoling created ZOOKEEPER-3789: -- Summary: fix the build warnings about useless @return found by IDEA Key: ZOOKEEPER-3789 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3789 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Assignee: maoling 1. I use my IDEA to find these maven build warnings: {code:java} /Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home/bin/java -Dmaven.multiModuleProjectDirectory=/Users/maoling/workspaces/workspace_zookeeper/zookeeper "-Dmaven.home=/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3" "-Dclassworlds.conf=/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3/bin/m2.conf" "-Dmaven.ext.class.path=/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven-event-listener.jar" "-javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=58545:/Applications/IntelliJ IDEA.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath "/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar" org.codehaus.classworlds.Launcher -Didea.version2019.3.1 -DskipTests=true package -P !java-build {code} {code:java} Javadoc Warnings /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:340: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????getEphemerals(EphemeralsCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:340: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetEphemerals(String, EphemeralsCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:271: ?? - ??@link: ?org.apache.zookeeper.ZooKeepersync(String, VoidCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:150: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetACL(String, Stat, ACLCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:89: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetAllChildrenNumber(String, AllChildrenNumberCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:202: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, boolean, Children2Callback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:202: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, Watcher, Children2Callback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:179: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, boolean, ChildrenCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:179: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, Watcher, ChildrenCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:227: ?? - ??@see: ?org.apache.zookeeper.ZooKeepercreate(String, byte[], List, CreateMode, Create2Callback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:227: ?? - ??@see: ?org.apache.zookeeper.ZooKeepercreate(String, byte[], List, CreateMode, Create2Callback, Object, long) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetData(String, boolean, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetData(String, Watcher, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????getConfig(boolean, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????getConfig(Watcher, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:328: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????multi(Iterable, MultiCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:70: ?? - ??@see: ?org.apache.zookeeper.ZooKeeperexists(String, boolean
[jira] [Created] (ZOOKEEPER-3768) improve the output of the hidden password in digest mode and fix the hardcode of ACL Scheme
maoling created ZOOKEEPER-3768: -- Summary: improve the output of the hidden password in digest mode and fix the hardcode of ACL Scheme Key: ZOOKEEPER-3768 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3768 Project: ZooKeeper Issue Type: Improvement Components: security, server Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3767) fix a large amount of maven build warnings
maoling created ZOOKEEPER-3767: -- Summary: fix a large amount of maven build warnings Key: ZOOKEEPER-3767 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3767 Project: ZooKeeper Issue Type: Improvement Reporter: maoling 1. I use my IDEA to find these maven build warnings: {code:java} /Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home/bin/java -Dmaven.multiModuleProjectDirectory=/Users/maoling/workspaces/workspace_zookeeper/zookeeper "-Dmaven.home=/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3" "-Dclassworlds.conf=/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3/bin/m2.conf" "-Dmaven.ext.class.path=/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven-event-listener.jar" "-javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=58545:/Applications/IntelliJ IDEA.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath "/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar" org.codehaus.classworlds.Launcher -Didea.version2019.3.1 -DskipTests=true package -P !java-build {code} {code:java} Javadoc Warnings /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:340: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????getEphemerals(EphemeralsCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:340: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetEphemerals(String, EphemeralsCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:271: ?? - ??@link: ?org.apache.zookeeper.ZooKeepersync(String, VoidCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:150: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetACL(String, Stat, ACLCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:89: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetAllChildrenNumber(String, AllChildrenNumberCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:202: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, boolean, Children2Callback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:202: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, Watcher, Children2Callback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:179: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, boolean, ChildrenCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:179: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetChildren(String, Watcher, ChildrenCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:227: ?? - ??@see: ?org.apache.zookeeper.ZooKeepercreate(String, byte[], List, CreateMode, Create2Callback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:227: ?? - ??@see: ?org.apache.zookeeper.ZooKeepercreate(String, byte[], List, CreateMode, Create2Callback, Object, long) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetData(String, boolean, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeepergetData(String, Watcher, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????getConfig(boolean, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:121: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????getConfig(Watcher, DataCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:328: ?? - ??@see: ?org.apache.zookeeper.ZooKeeper????multi(Iterable, MultiCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/AsyncCallback.java:70: ?? - ??@see: ?org.apache.zookeeper.ZooKeeperexists(String, boolean, StatCallback, Object) /Users/maoling/workspaces//zookeeper/zookeeper-server/src
[jira] [Created] (ZOOKEEPER-3761) upgrade JLine jar dependency
maoling created ZOOKEEPER-3761: -- Summary: upgrade JLine jar dependency Key: ZOOKEEPER-3761 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3761 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling h2. currently JLine used 2.11(May 19, 2013) which is too out-of-date, we need to upgrade it to the lastest one: 3.13.3 or 3.14.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3735) fix the bad format of RATE_LOGGER
maoling created ZOOKEEPER-3735: -- Summary: fix the bad format of RATE_LOGGER Key: ZOOKEEPER-3735 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3735 Project: ZooKeeper Issue Type: Bug Components: server Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3730) fix a typo about watchManagerName in the zookeeperAdmin.md
maoling created ZOOKEEPER-3730: -- Summary: fix a typo about watchManagerName in the zookeeperAdmin.md Key: ZOOKEEPER-3730 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3730 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling {code:java} * *watchManaggerName* : (Java system property only: **zookeeper.watchManagerName**) **New in 3.6.0:** Added in [ZOOKEEPER-1179](https://issues.apache.org/jira/browse/ZOOKEEPER-1179) New watcher manager WatchManagerOptimized is added to optimize the memory overhead in heavy watch use cases. This config is used to define which watcher manager to be used. Currently, we only support WatchManager and WatchManagerOptimized. {code} *watchManaggerName* is a typo -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3729) fix a typo about watchManagerName in the zookeeperAdmin.md
maoling created ZOOKEEPER-3729: -- Summary: fix a typo about watchManagerName in the zookeeperAdmin.md Key: ZOOKEEPER-3729 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3729 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling {code:java} * *watchManaggerName* : (Java system property only: **zookeeper.watchManagerName**) **New in 3.6.0:** Added in [ZOOKEEPER-1179](https://issues.apache.org/jira/browse/ZOOKEEPER-1179) New watcher manager WatchManagerOptimized is added to optimize the memory overhead in heavy watch use cases. This config is used to define which watcher manager to be used. Currently, we only support WatchManager and WatchManagerOptimized. {code} *watchManaggerName* is a typo -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3728) move traceMask calculation logic into the trace log in the FinalRequestProcessor#processRequest
maoling created ZOOKEEPER-3728: -- Summary: move traceMask calculation logic into the trace log in the FinalRequestProcessor#processRequest Key: ZOOKEEPER-3728 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3728 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling {code:java} LOG.debug("Processing request:: {}", request); // request.addRQRec(">final"); long traceMask = ZooTrace.CLIENT_REQUEST_TRACE_MASK; if (request.type == OpCode.ping) { traceMask = ZooTrace.SERVER_PING_TRACE_MASK; } if (LOG.isTraceEnabled()) { ZooTrace.logRequest(LOG, traceMask, 'E', request, ""); } {code} # remove the useless *// request.addRQRec(">final");* # most read/write requests will hit the code here but useless when Log Trace disable. we need to move traceMask calculation logic into the LOG.isTraceEnabled() -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3722) make logs of ResponseCache more readable
maoling created ZOOKEEPER-3722: -- Summary: make logs of ResponseCache more readable Key: ZOOKEEPER-3722 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3722 Project: ZooKeeper Issue Type: Bug Components: server Reporter: maoling The logs look like redundant: {code:java} 2020-02-12 16:16:09,208 [myid:3] - INFO [QuorumPeer[myid=3](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):ResponseCache@45] - Response cache size is initialized with value 400. 2020-02-12 16:16:09,208 [myid:3] - INFO [QuorumPeer[myid=3](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):ResponseCache@45] - Response cache size is initialized with value 400.{code} What we want is: {code:java} 2020-02-12 16:16:09,208 [myid:3] - INFO [QuorumPeer[myid=3](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):ResponseCache@45] - getData Response cache size is initialized with value 400. 2020-02-12 16:16:09,208 [myid:3] - INFO [QuorumPeer[myid=3](plain=[0:0:0:0:0:0:0:0]:2183)(secure=disabled):ResponseCache@45] - getChild Response cache size is initialized with value 400. {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3710) [trivial bug] fix compile error in PurgeTxnTest introduced by ZOOKEEPER-3231
maoling created ZOOKEEPER-3710: -- Summary: [trivial bug] fix compile error in PurgeTxnTest introduced by ZOOKEEPER-3231 Key: ZOOKEEPER-3710 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3710 Project: ZooKeeper Issue Type: Bug Components: tests Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3666) remove the deprecated LogFormatter tool
maoling created ZOOKEEPER-3666: -- Summary: remove the deprecated LogFormatter tool Key: ZOOKEEPER-3666 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3666 Project: ZooKeeper Issue Type: Improvement Components: scripts Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3665) support Client side caching in ZooKeeper
maoling created ZOOKEEPER-3665: -- Summary: support Client side caching in ZooKeeper Key: ZOOKEEPER-3665 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3665 Project: ZooKeeper Issue Type: New Feature Components: java client, server Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3661) Failed to execute goal on project zookeeper-recipes:
maoling created ZOOKEEPER-3661: -- Summary: Failed to execute goal on project zookeeper-recipes: Key: ZOOKEEPER-3661 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3661 Project: ZooKeeper Issue Type: Bug Reporter: maoling mvn clean package -Dmaven.test.skip=true -U {code:java} [INFO] [INFO] BUILD FAILURE [INFO] [INFO] Total time: 35.080 s [INFO] Finished at: 2019-12-23T14:46:29+08:00 [INFO] [ERROR] Failed to execute goal on project zookeeper-recipes: Could not resolve dependencies for project org.apache.zookeeper:zookeeper-recipes:pom:3.7.0-SNAPSHOT: Could not find artifact org.apache.zookeeper:zookeeper:jar:tests:3.7.0-SNAPSHOT in spring-snapshot (http://repo.spring.io/snapshot) -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException [ERROR] [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn -rf :zookeeper-recipes {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3660) support the lz4 compress mode for snapshot
maoling created ZOOKEEPER-3660: -- Summary: support the lz4 compress mode for snapshot Key: ZOOKEEPER-3660 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3660 Project: ZooKeeper Issue Type: Improvement Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3659) make the WatchManagerFactory log more readable
maoling created ZOOKEEPER-3659: -- Summary: make the WatchManagerFactory log more readable Key: ZOOKEEPER-3659 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3659 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling {code:java} 2019-12-19 20:28:58,854 [myid:] - INFO [main:WatchManagerFactory@42] - Using org.apache.zookeeper.server.watch.WatchManager as watch manager 2019-12-19 20:28:58,854 [myid:] - INFO [main:WatchManagerFactory@42] - Using org.apache.zookeeper.server.watch.WatchManager as watch manager{code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3649) ls -s CLI need a line break
maoling created ZOOKEEPER-3649: -- Summary: ls -s CLI need a line break Key: ZOOKEEPER-3649 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3649 Project: ZooKeeper Issue Type: Improvement Components: scripts Reporter: maoling {code:java} [zk: localhost:2181(CONNECTED) 7] ls -s / [test, test-12-10, zookeeper]cZxid = 0x0 ctime = Thu Jan 01 08:00:00 CST 1970 mZxid = 0x0 mtime = Thu Jan 01 08:00:00 CST 1970 pZxid = 0x92 cversion = 7 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x0 dataLength = 0 numChildren = 3[zk: localhost:2181(CONNECTED) 8] {code} What we want is: {code:java} [zk: localhost:2181(CONNECTED) 7] ls -s / [test, test-12-10, zookeeper] cZxid = 0x0 ctime = Thu Jan 01 08:00:00 CST 1970 mZxid = 0x0 mtime = Thu Jan 01 08:00:00 CST 1970 pZxid = 0x92 cversion = 7 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x0 dataLength = 0 numChildren = 3[zk: localhost:2181(CONNECTED) 8] {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3648) remove Hadoop logo in the ZooKeeper documentation
maoling created ZOOKEEPER-3648: -- Summary: remove Hadoop logo in the ZooKeeper documentation Key: ZOOKEEPER-3648 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3648 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling Fix For: 3.6.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3637) Fix haveDelivered wrong implementation
maoling created ZOOKEEPER-3637: -- Summary: Fix haveDelivered wrong implementation Key: ZOOKEEPER-3637 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3637 Project: ZooKeeper Issue Type: Bug Components: leaderElection, server Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3636) fix the missing configuration property in the zookeeperAdmin page when moving from xml to markdown
maoling created ZOOKEEPER-3636: -- Summary: fix the missing configuration property in the zookeeperAdmin page when moving from xml to markdown Key: ZOOKEEPER-3636 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3636 Project: ZooKeeper Issue Type: Improvement Components: documentation Affects Versions: 3.6.0 Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3629) add a new metric to detect the clock skew
maoling created ZOOKEEPER-3629: -- Summary: add a new metric to detect the clock skew Key: ZOOKEEPER-3629 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3629 Project: ZooKeeper Issue Type: Improvement Components: metric system, server Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3621) fix the potential bug in the process of clean-up of session when clock skew
maoling created ZOOKEEPER-3621: -- Summary: fix the potential bug in the process of clean-up of session when clock skew Key: ZOOKEEPER-3621 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3621 Project: ZooKeeper Issue Type: Bug Components: server Affects Versions: 3.6.0 Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3616) add a new documentation: zookeeperCodingGuide.md
maoling created ZOOKEEPER-3616: -- Summary: add a new documentation: zookeeperCodingGuide.md Key: ZOOKEEPER-3616 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3616 Project: ZooKeeper Issue Type: Sub-task Components: documentation Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3615) write a TLA+ specification to verify Zab protocol
maoling created ZOOKEEPER-3615: -- Summary: write a TLA+ specification to verify Zab protocol Key: ZOOKEEPER-3615 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3615 Project: ZooKeeper Issue Type: Wish Components: documentation, server Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3611) strengthen CLI:addWatch to support all watch event type and add a documentation
maoling created ZOOKEEPER-3611: -- Summary: strengthen CLI:addWatch to support all watch event type and add a documentation Key: ZOOKEEPER-3611 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3611 Project: ZooKeeper Issue Type: Improvement Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3608) add a documentation about currentEpoch and acceptEpoch
maoling created ZOOKEEPER-3608: -- Summary: add a documentation about currentEpoch and acceptEpoch Key: ZOOKEEPER-3608 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3608 Project: ZooKeeper Issue Type: Improvement Components: documentation, leaderElection, server Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3601) introduce the fault injection framework: Byteman for ZooKeeper
maoling created ZOOKEEPER-3601: -- Summary: introduce the fault injection framework: Byteman for ZooKeeper Key: ZOOKEEPER-3601 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3601 Project: ZooKeeper Issue Type: New Feature Components: documentation, server Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3600) support the complete Linearizability Read
maoling created ZOOKEEPER-3600: -- Summary: support the complete Linearizability Read Key: ZOOKEEPER-3600 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3600 Project: ZooKeeper Issue Type: New Feature Components: documentation, java client, server Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3593) A optimization for the documentation about "jute.maxbuffer"
maoling created ZOOKEEPER-3593: -- Summary: A optimization for the documentation about "jute.maxbuffer" Key: ZOOKEEPER-3593 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3593 Project: ZooKeeper Issue Type: Improvement Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3587) Add a documentation about docker
maoling created ZOOKEEPER-3587: -- Summary: Add a documentation about docker Key: ZOOKEEPER-3587 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3587 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3585) Add a documentation about RequestProcessors
maoling created ZOOKEEPER-3585: -- Summary: Add a documentation about RequestProcessors Key: ZOOKEEPER-3585 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3585 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3583) stat -d to show more details:node type, ttl time info
maoling created ZOOKEEPER-3583: -- Summary: stat -d to show more details:node type, ttl time info Key: ZOOKEEPER-3583 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3583 Project: ZooKeeper Issue Type: Improvement Components: other, scripts Reporter: maoling Assignee: maoling {code:java} [zk: 127.0.0.1:2180(CONNECTED) 15] stat /test cZxid = 0xfa3c001b7ce4 ctime = Tue Oct 15 14:07:03 CST 2019 mZxid = 0xfa3c001b7d32 mtime = Tue Oct 15 16:52:28 CST 2019 pZxid = 0xfa3c001b7d33 cversion = 11 dataVersion = 42 aclVersion = 0 ephemeralOwner = 0x0 dataLength = 6 numChildren = 11 {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3582) refactor the async api call to lambda style
maoling created ZOOKEEPER-3582: -- Summary: refactor the async api call to lambda style Key: ZOOKEEPER-3582 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3582 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling For example: {code:java} if (recursive) { ZKUtil.visitSubTreeDFS(zk, path, watch, new StringCallback() { @Override public void processResult(int rc, String path, Object ctx, String name) { out.println(path); } }); } {code} refactor to {code:java} ZKUtil.visitSubTreeDFS(zk, path, watch, (rc, path1, ctx, name) -> out.println(path1)); {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3581) use factory design pattern to refactor ZooKeeperMain
maoling created ZOOKEEPER-3581: -- Summary: use factory design pattern to refactor ZooKeeperMain Key: ZOOKEEPER-3581 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3581 Project: ZooKeeper Issue Type: Improvement Reporter: maoling use factory design pattern to refactor ZooKeeperMain, make the code more elegant {code:java} static { commandMap.put("connect", "host:port"); commandMap.put("history", ""); commandMap.put("redo", "cmdno"); commandMap.put("printwatches", "on|off"); commandMap.put("quit", ""); new CloseCommand().addToMap(commandMapCli); new CreateCommand().addToMap(commandMapCli); new DeleteCommand().addToMap(commandMapCli); new DeleteAllCommand().addToMap(commandMapCli); // Depricated: rmr new DeleteAllCommand("rmr").addToMap(commandMapCli); new SetCommand().addToMap(commandMapCli); new GetCommand().addToMap(commandMapCli); new LsCommand().addToMap(commandMapCli); new Ls2Command().addToMap(commandMapCli); new GetAclCommand().addToMap(commandMapCli); new SetAclCommand().addToMap(commandMapCli); new StatCommand().addToMap(commandMapCli); new SyncCommand().addToMap(commandMapCli); new SetQuotaCommand().addToMap(commandMapCli); new ListQuotaCommand().addToMap(commandMapCli); new DelQuotaCommand().addToMap(commandMapCli); new AddAuthCommand().addToMap(commandMapCli); new ReconfigCommand().addToMap(commandMapCli); new GetConfigCommand().addToMap(commandMapCli); new RemoveWatchesCommand().addToMap(commandMapCli); new GetEphemeralsCommand().addToMap(commandMapCli); new GetAllChildrenNumberCommand().addToMap(commandMapCli); new VersionCommand().addToMap(commandMapCli); // add all to commandMap for (Entry entry : commandMapCli.entrySet()) { commandMap.put(entry.getKey(), entry.getValue().getOptionStr()); } } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3579) handle NPE gracefully when the watch parameter of zookeeper java client is null
maoling created ZOOKEEPER-3579: -- Summary: handle NPE gracefully when the watch parameter of zookeeper java client is null Key: ZOOKEEPER-3579 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3579 Project: ZooKeeper Issue Type: Bug Components: java client Reporter: maoling When we use the native java client {code:java} try { zk = new ZooKeeper(connectString, (int) sessionTimeout, null); } catch (IOException e) { throw new DBException("Creating connection failed."); } {code} We will get the following, this issue had existed in all the zookeeper releases for a long time {code:java} 2019-10-14 18:41:49 ERROR ClientCnxn:537 - Error while calling watcher2019-10-14 18:41:49 ERROR ClientCnxn:537 - Error while calling watcherjava.lang.NullPointerException at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:535) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:510)2019-10-14 18:41:50 ERROR ClientCnxn:537 - Error while calling watcherjava.lang.NullPointerException at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:535) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:510) {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3578) Add a new CLI: multi
maoling created ZOOKEEPER-3578: -- Summary: Add a new CLI: multi Key: ZOOKEEPER-3578 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3578 Project: ZooKeeper Issue Type: New Feature Components: scripts Reporter: maoling Assignee: maoling -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3570) add the constant for cxid
maoling created ZOOKEEPER-3570: -- Summary: add the constant for cxid Key: ZOOKEEPER-3570 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3570 Project: ZooKeeper Issue Type: Improvement Components: server Affects Versions: 3.6.0 Reporter: maoling in the *ClientCnxn*, we had hard-code cxid which is not elegant. we need a constant for cxid {code:java} if (replyHdr.getXid() == -2) { // -2 is the xid for pings if (LOG.isDebugEnabled()) { LOG.debug("Got ping response for sessionid: 0x" + Long.toHexString(sessionId) + " after " + ((System.nanoTime() - lastPingSentNs) / 100) + "ms"); } return; } if (replyHdr.getXid() == -4) { // -4 is the xid for AuthPacket if (replyHdr.getErr() == KeeperException.Code.AUTHFAILED.intValue()) { state = States.AUTH_FAILED; eventThread.queueEvent(new WatchedEvent(Watcher.Event.EventType.None, Watcher.Event.KeeperState.AuthFailed, null)); eventThread.queueEventOfDeath(); } if (LOG.isDebugEnabled()) { LOG.debug("Got auth sessionid:0x" + Long.toHexString(sessionId)); } return; } if (replyHdr.getXid() == -1) { {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (ZOOKEEPER-3535) add a new property:initial-cluster-token to identify a ensemble
maoling created ZOOKEEPER-3535: -- Summary: add a new property:initial-cluster-token to identify a ensemble Key: ZOOKEEPER-3535 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3535 Project: ZooKeeper Issue Type: New Feature Components: documentation, server Reporter: maoling Assignee: maoling Fix For: 3.6.0 Every new zk cluster generates a new cluster ID based on the initial cluster configuration and a user-provided unique initial-cluster-token value. By having unique cluster ID’s, zk is protected from cross-cluster interaction which could corrupt the cluster. Usually this warning happens after tearing down an old cluster, then reusing some of the peer addresses for the new cluster. If any zk process from the old cluster is still running it will try to contact the new cluster. The new cluster will recognize a cluster ID mismatch, then ignore the request and emit this warning. This warning is often cleared by ensuring peer addresses among distinct clusters are disjoint. -- This message was sent by Atlassian Jira (v8.3.2#803003)
[jira] [Created] (ZOOKEEPER-3529) add a new doc: zookeeperUseCases.md
maoling created ZOOKEEPER-3529: -- Summary: add a new doc: zookeeperUseCases.md Key: ZOOKEEPER-3529 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3529 Project: ZooKeeper Issue Type: Sub-task Components: documentation Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian Jira (v8.3.2#803003)
[jira] [Created] (ZOOKEEPER-3527) add a series of docker thing about zookeeper
maoling created ZOOKEEPER-3527: -- Summary: add a series of docker thing about zookeeper Key: ZOOKEEPER-3527 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3527 Project: ZooKeeper Issue Type: Improvement Components: documentation, scripts, server Affects Versions: 3.6.0 Reporter: maoling -- This message was sent by Atlassian Jira (v8.3.2#803003)
[jira] [Created] (ZOOKEEPER-3506) correct the SessionTrackerImpl#initializeNextSession's java doc about how to generate the sessionId
maoling created ZOOKEEPER-3506: -- Summary: correct the SessionTrackerImpl#initializeNextSession's java doc about how to generate the sessionId Key: ZOOKEEPER-3506 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3506 Project: ZooKeeper Issue Type: Improvement Components: documentation, server Reporter: maoling Fix For: 3.6.0 {code:java} /** * Generates an initial sessionId. High order byte is serverId, next 5 * 5 bytes are from timestamp, and low order 2 bytes are 0s. */ public static long initializeNextSession(long id) { long nextSid; nextSid = (Time.currentElapsedTime() << 24) >>> 8; nextSid = nextSid | (id <<56); if (nextSid == EphemeralType.CONTAINER_EPHEMERAL_OWNER) { ++nextSid; // this is an unlikely edge case, but check it just in case } return nextSid; } {code} -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3502) improve the server commands: zabstate to have a better observation on the process of leader elction
maoling created ZOOKEEPER-3502: -- Summary: improve the server commands: zabstate to have a better observation on the process of leader elction Key: ZOOKEEPER-3502 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3502 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3501) unify the method:op2String()
maoling created ZOOKEEPER-3501: -- Summary: unify the method:op2String() Key: ZOOKEEPER-3501 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3501 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Fix For: 3.6.0 there were two duplicated method *public static String op2String(int op)* in the code base: {code:java} org.apache.zookeeper.server.TraceFormatter#op2String org.apache.zookeeper.server.Request#op2String {code} and they are inconsistency, we should unify it and remain only one -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3499) [admin server way] Add a complete backup mechanism for zookeeper internal
maoling created ZOOKEEPER-3499: -- Summary: [admin server way] Add a complete backup mechanism for zookeeper internal Key: ZOOKEEPER-3499 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3499 Project: ZooKeeper Issue Type: New Feature Components: server Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3486) add the doc about the admin server's security issue depended on jetty TLS/SSL
maoling created ZOOKEEPER-3486: -- Summary: add the doc about the admin server's security issue depended on jetty TLS/SSL Key: ZOOKEEPER-3486 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3486 Project: ZooKeeper Issue Type: Improvement Components: documentation Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3477) Flaky test:CommitProcessorMetricsTest.testConcurrentRequestProcessingInCommitProcessor
maoling created ZOOKEEPER-3477: -- Summary: Flaky test:CommitProcessorMetricsTest.testConcurrentRequestProcessingInCommitProcessor Key: ZOOKEEPER-3477 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3477 Project: ZooKeeper Issue Type: Sub-task Components: tests Reporter: maoling [https://builds.apache.org/job/PreCommit-ZOOKEEPER-github-pr-build-maven/org.apache.zookeeper$zookeeper/1011/testReport/junit/org.apache.zookeeper.server.quorum/CommitProcessorMetricsTest/testConcurrentRequestProcessingInCommitProcessor/] {code:java} Error Message expected:<3> but was:<2> Stacktrace java.lang.AssertionError: expected:<3> but was:<2> at org.apache.zookeeper.server.quorum.CommitProcessorMetricsTest.testConcurrentRequestProcessingInCommitProcessor(CommitProcessorMetricsTest.java:391) Standard Output 2019-07-30 08:02:13,023 [myid:] - INFO [main:ZKTestCase$1@60] - STARTING testConcurrentRequestProcessingInCommitProcessor 2019-07-30 08:02:13,023 [myid:] - INFO [main:CommitProcessorMetricsTest@52] - setup 2019-07-30 08:02:13,023 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@78] - RUNNING TEST METHOD testConcurrentRequestProcessingInCommitProcessor 2019-07-30 08:02:13,024 [myid:] - INFO [main:CommitProcessor@496] - Configuring CommitProcessor with readBatchSize -1 commitBatchSize 1 2019-07-30 08:02:13,025 [myid:] - INFO [main:CommitProcessor@454] - Configuring CommitProcessor with 24 worker threads. 2019-07-30 08:02:13,075 [myid:] - INFO [main:CommitProcessorMetricsTest$TestCommitProcessor@109] - numWorkerThreads in Test is 3 2019-07-30 08:02:15,079 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@99] - TEST METHOD FAILED testConcurrentRequestProcessingInCommitProcessor java.lang.AssertionError: expected:<3> but was:<2> at org.junit.Assert.fail(Assert.java:88) at org.junit.Assert.failNotEquals(Assert.java:834) at org.junit.Assert.assertEquals(Assert.java:118) at org.junit.Assert.assertEquals(Assert.java:144) at {code} -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3464) Enforce the checkstyle violations in the package org.apache.zookeeper.common
maoling created ZOOKEEPER-3464: -- Summary: Enforce the checkstyle violations in the package org.apache.zookeeper.common Key: ZOOKEEPER-3464 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3464 Project: ZooKeeper Issue Type: Sub-task Components: documentation Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3461) add a doc about the admin server command
maoling created ZOOKEEPER-3461: -- Summary: add a doc about the admin server command Key: ZOOKEEPER-3461 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3461 Project: ZooKeeper Issue Type: Improvement Components: documentation Affects Versions: 3.6.0 Reporter: maoling -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (ZOOKEEPER-3454) add a new CLI: memberlist
maoling created ZOOKEEPER-3454: -- Summary: add a new CLI: memberlist Key: ZOOKEEPER-3454 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3454 Project: ZooKeeper Issue Type: New Feature Components: java client Reporter: maoling Assignee: maoling -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3447) add a doc: zookeeperMonitor.md
maoling created ZOOKEEPER-3447: -- Summary: add a doc: zookeeperMonitor.md Key: ZOOKEEPER-3447 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3447 Project: ZooKeeper Issue Type: New Feature Components: documentation Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3438) Flaky test:org.apache.zookeeper.server.PrepRequestProcessorMetricsTest.testPrepRequestProcessorMetrics
maoling created ZOOKEEPER-3438: -- Summary: Flaky test:org.apache.zookeeper.server.PrepRequestProcessorMetricsTest.testPrepRequestProcessorMetrics Key: ZOOKEEPER-3438 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3438 Project: ZooKeeper Issue Type: Bug Components: tests Reporter: maoling Fix For: 3.6.0 [https://builds.apache.org/job/PreCommit-ZOOKEEPER-github-pr-build-maven/org.apache.zookeeper$zookeeper/844/testReport/junit/org.apache.zookeeper.server/PrepRequestProcessorMetricsTest/testPrepRequestProcessorMetrics/] {code:java} Error Message expected:<5> but was:<4> Stacktrace java.lang.AssertionError: expected:<5> but was:<4> at org.apache.zookeeper.server.PrepRequestProcessorMetricsTest.testPrepRequestProcessorMetrics(PrepRequestProcessorMetricsTest.java:146) Standard Output 2019-06-21 09:09:37,915 [myid:] - INFO [main:ZKTestCase$1@60] - STARTING testPrepRequestProcessorMetrics 2019-06-21 09:09:37,917 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@78] - RUNNING TEST METHOD testPrepRequestProcessorMetrics 2019-06-21 09:09:37,951 [myid:] - ERROR [ProcessThread(sid:0 cport:-1)::PrepRequestProcessor@1002] - Failed to process sessionid:0x1 type:setData cxid:0x0 zxid:0x1 txntype:5 reqpath:n/a java.lang.NullPointerException at org.apache.zookeeper.server.PrepRequestProcessor.pRequest2Txn(PrepRequestProcessor.java:521) at org.apache.zookeeper.server.PrepRequestProcessor.pRequest(PrepRequestProcessor.java:872) at org.apache.zookeeper.server.PrepRequestProcessor.run(PrepRequestProcessor.java:156) 2019-06-21 09:09:37,952 [myid:] - ERROR [ProcessThread(sid:0 cport:-1)::PrepRequestProcessor@1015] - Dumping request buffer: 0x00042f666f6f 2019-06-21 09:09:37,959 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@99] - TEST METHOD FAILED testPrepRequestProcessorMetrics java.lang.AssertionError: expected:<5> but was:<4> at org.junit.Assert.fail(Assert.java:88) at org.junit.Assert.failNotEquals(Assert.java:834) at org.junit.Assert.assertEquals(Assert.java:118) at org.junit.Assert.assertEquals(Assert.java:144) at org.apache.zookeeper.server.PrepRequestProcessorMetricsTest.testPrepRequestProcessorMetrics(PrepRequestProcessorMetricsTest.java:146) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.apache.zookeeper.JUnit4ZKTestRunner$LoggedInvokeMethod.evaluate(JUnit4ZKTestRunner.java:80) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55) at org.junit.rules.RunRules.evaluate(RunRules.java:20) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365) at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345) at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418) 20
答复: Intellij Idea warning as error with -Xdoclint
I also noticed this when running UT with IDEA.may we can merge this PR: https://github.com/apache/zookeeper/pull/988 Or this one: https://github.com/apache/zookeeper/pull/983 to remove that warning. 发送自 Windows 10 版邮件应用 发件人: Andor Molnar 发送时间: 2019年6月20日 5:46 收件人: DevZooKeeper 主题: Intellij Idea warning as error with -Xdoclint Hi Enrico, I have the following error message in Idea since -Xdoclint is enabled in the main pom.xml file: /Users/andormolnar/git/my-zookeeper/zookeeper-jute/src/main/java/org/apache/jute/Utils.java Error:(194, 15) java: @param name not found Error:(231, 15) java: @param name not found Strange that I don’t see the same warnings in console when running ‘mvn install’. I confirm that removing “-Xdoclint” (or fixing javadoc issues) solves the problem. Andor
[jira] [Created] (ZOOKEEPER-3434) [FileTabCharacter] clear up the all the checkstyle violations in the zookeeper-server module
maoling created ZOOKEEPER-3434: -- Summary: [FileTabCharacter] clear up the all the checkstyle violations in the zookeeper-server module Key: ZOOKEEPER-3434 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3434 Project: ZooKeeper Issue Type: Sub-task Reporter: maoling Assignee: maoling [FileTabCharacter] clear up the all the checkstyle violations in the zookeeper-server module -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3431) clear up the all the checkstyle violations in the zookeeper-server module
maoling created ZOOKEEPER-3431: -- Summary: clear up the all the checkstyle violations in the zookeeper-server module Key: ZOOKEEPER-3431 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3431 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Fix For: 3.6.0 it's time to clear up the all the checkstyle violations(turn on the {{true}}). we can learn from the hbase whose checkstyle is very strict and ensures a very unified code style. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3429) Flaky test test:org.apache.zookeeper.test.DisconnectedWatcherTest.testManyChildWatchersAutoReset
maoling created ZOOKEEPER-3429: -- Summary: Flaky test test:org.apache.zookeeper.test.DisconnectedWatcherTest.testManyChildWatchersAutoReset Key: ZOOKEEPER-3429 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3429 Project: ZooKeeper Issue Type: Test Components: tests Reporter: maoling Fix For: 3.6.0 [https://builds.apache.org/view/S-Z/view/ZooKeeper/job/ZooKeeper-trunk-java9/lastFailedBuild/testReport/junit/org.apache.zookeeper.test/DisconnectedWatcherTest/testManyChildWatchersAutoReset/] {code:java} Error Message test timed out after 84 milliseconds Stacktrace org.junit.runners.model.TestTimedOutException: test timed out after 84 milliseconds at java.base@9.0.1/java.lang.Object.wait(Native Method) at java.base@9.0.1/java.lang.Object.wait(Object.java:516) at app//org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1556) at app//org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1539) at app//org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:1537) at app//org.apache.zookeeper.test.DisconnectedWatcherTest.testManyChildWatchersAutoReset(DisconnectedWatcherTest.java:247) at java.base@9.0.1/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base@9.0.1/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base@9.0.1/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at app//org.apache.zookeeper.JUnit4ZKTestRunner$LoggedInvokeMethod.evaluate(JUnit4ZKTestRunner.java:80) at java.base@9.0.1/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base@9.0.1/java.lang.Thread.run(Thread.java:844) {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3428) enable the TTL node and add a lazy-delete strategy to get noNodeException quickly when the ttl node had expired
maoling created ZOOKEEPER-3428: -- Summary: enable the TTL node and add a lazy-delete strategy to get noNodeException quickly when the ttl node had expired Key: ZOOKEEPER-3428 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3428 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3425) ttl node should not have the children
maoling created ZOOKEEPER-3425: -- Summary: ttl node should not have the children Key: ZOOKEEPER-3425 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3425 Project: ZooKeeper Issue Type: Improvement Components: server Reporter: maoling Assignee: maoling Fix For: 3.6.0 ttl node should not have the children -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3423) add VersionInfoMain.java to .gitignore and doc the cmd:"./zkServer.sh version"
maoling created ZOOKEEPER-3423: -- Summary: add VersionInfoMain.java to .gitignore and doc the cmd:"./zkServer.sh version" Key: ZOOKEEPER-3423 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3423 Project: ZooKeeper Issue Type: Improvement Components: scripts Reporter: maoling Assignee: maoling Fix For: 3.6.0 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3417) add the new doc:zookeeperProtocols to introduce the implementation details of ZAB comparing with raft
maoling created ZOOKEEPER-3417: -- Summary: add the new doc:zookeeperProtocols to introduce the implementation details of ZAB comparing with raft Key: ZOOKEEPER-3417 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3417 Project: ZooKeeper Issue Type: New Feature Components: documentation Affects Versions: 3.6.0 Reporter: maoling -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3414) sync api should throw NoNodeException when syncing a path which is not exist
maoling created ZOOKEEPER-3414: -- Summary: sync api should throw NoNodeException when syncing a path which is not exist Key: ZOOKEEPER-3414 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3414 Project: ZooKeeper Issue Type: Bug Components: java client Reporter: maoling Fix For: 3.6.0 [zk: 127.0.0.1:2180(CONNECTED) 0] sync /c1 Sync is OK [zk: 127.0.0.1:2180(CONNECTED) 1] sync /c1dsafasdfasdfadsfasd Node does not exist: /c1dsafasdfasdfadsfasd -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3413) add a serialVersionUID for ClientCnxnLimitException to make compile no warning
maoling created ZOOKEEPER-3413: -- Summary: add a serialVersionUID for ClientCnxnLimitException to make compile no warning Key: ZOOKEEPER-3413 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3413 Project: ZooKeeper Issue Type: Improvement Components: java client Affects Versions: 3.6.0 Reporter: maoling build-generated: [javac] Compiling 2 source files to /Users/wenba/workspaces/workspace_zookeeper/zookeeper/build/classes compile: [javac] Compiling 49 source files to /Users/wenba/workspaces/workspace_zookeeper/zookeeper/build/classes [javac] /Users/wenba/workspaces/workspace_zookeeper/zookeeper/zookeeper-server/src/main/java/org/apache/zookeeper/server/ClientCnxnLimitException.java:24: 警告: [serial] 可序列化类ClientCnxnLimitException没有 serialVersionUID 的定义 [javac] public class ClientCnxnLimitException extends Exception { [javac] ^ [javac] 1 个警告 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3411) remove the deprecated CLI: ls2 and rmr
maoling created ZOOKEEPER-3411: -- Summary: remove the deprecated CLI: ls2 and rmr Key: ZOOKEEPER-3411 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3411 Project: ZooKeeper Issue Type: Improvement Components: scripts Affects Versions: 3.6.0 Reporter: maoling remove the deprecated CLI: *ls2* and *rmr* Look at the discuss in the [https://github.com/apache/zookeeper/pull/833] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (ZOOKEEPER-3410) ./zkTxnLogToolkit.sh will throw the NPE and stop the process of formatting txn logs due to the data's content is null
maoling created ZOOKEEPER-3410: -- Summary: ./zkTxnLogToolkit.sh will throw the NPE and stop the process of formatting txn logs due to the data's content is null Key: ZOOKEEPER-3410 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3410 Project: ZooKeeper Issue Type: Bug Components: scripts Affects Versions: 3.6.0 Reporter: maoling [zk: 127.0.0.1:2180(CONNECTED) 26] create -t 500 /ttl_node 19-5-30 下午06时10分50秒 session 0x10007a75c0c cxid 0x0 zxid 0x6 createSession 3 Exception in thread "main" java.lang.NullPointerException at java.lang.String.(String.java:566) at org.apache.zookeeper.server.persistence.TxnLogToolkit.getDataStrFromTxn(TxnLogToolkit.java:316) at org.apache.zookeeper.server.persistence.TxnLogToolkit.printTxn(TxnLogToolkit.java:272) at org.apache.zookeeper.server.persistence.TxnLogToolkit.printTxn(TxnLogToolkit.java:266) at org.apache.zookeeper.server.persistence.TxnLogToolkit.dump(TxnLogToolkit.java:217) at org.apache.zookeeper.server.persistence.TxnLogToolkit.main(TxnLogToolkit.java:116) t*xnData.append(createTTLTxn.getPath() + "," + new String(createTTLTxn.getData()))* *.append("," + createTTLTxn.getAcl() + "," + createTTLTxn.getParentCVersion())* *.append("," + createTTLTxn.getTtl());* -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (ZOOKEEPER-2584) when setquota for a znode and set ip/user ACL on /zookeeper/quota, still able to delete the quota from client with another ip though it says "Authentication is
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16849598#comment-16849598 ] maoling edited comment on ZOOKEEPER-2584 at 5/28/19 11:03 AM: -- I got it. 1. the scope of d(delete) of *crdwa* is only the child nodes(first level) under the path you input. If one user do this: *setAcl /zookeeper/quota auth:user:pass:crdwa* ohters cannot have the permission to operate the first level nodes under */zookeeper/quota*, but still have the delete permission to delete the */zookeeper/quota/test/zookeeper_limits* under */zookeeper/quota/test* *ACL has no Inheritance relationship.* 2.To solve this issue, users can do this: *setAcl /zookeeper/quota/test auth:user1:12345:crwad* or *setAcl -R /zookeeper/quota auth:user1:12345:crwad* (availble in the master branch) was (Author: maoling): I got it. 1. the scope of d(delete) of *crdwa* is only the child nodes(first level) under the path you input. If one user do this: *setAcl /zookeeper/quota auth:user:pass:crdwa* ohters cannot have the permission to operate the nodes under */zookeeper/quota*, but still have the delete permission to delete the */zookeeper/quota/test/zookeeper_limits* under */zookeeper/quota/test* *ACL has no Inheritance relationship.* 2.To solve this issue, users can do this: *setAcl /zookeeper/quota/test auth:user1:12345:crwad* or *setAcl -R /zookeeper/quota auth:user1:12345:crwad* (availble in the master branch) > when setquota for a znode and set ip/user ACL on /zookeeper/quota, still able > to delete the quota from client with another ip though it says > "Authentication is not valid" > -- > > Key: ZOOKEEPER-2584 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2584 > Project: ZooKeeper > Issue Type: Bug > Components: server >Affects Versions: 3.5.1 >Reporter: Rakesh Kumar Singh >Assignee: Rakesh Kumar Singh >Priority: Major > > when setquota for a znode and set ip/user ACL on /zookeeper/quota, still able > to delete the quota from client with another ip though it says > "Authentication is not valid" > >> Set quota and ip ACL from one client (with IP 10.18.101.80) > [zk: 10.18.101.80:2181(CONNECTED) 9] setquota -n 10 /test > [zk: 10.18.101.80:2181(CONNECTED) 10] setAcl /zookeeper/quota > ip:10.18.101.80:crdwa > [zk: 10.18.101.80:2181(CONNECTED) 11] > >> Try to delete the set quota using different client(with ip 10.18.219.50) > [zk: 10.18.219.50:2181(CONNECTED) 22] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > Output quota for /test count=10,bytes=-1 > Output stat for /test count=1,bytes=5 > [zk: 10.18.219.50:2181(CONNECTED) 23] delquota /test > Authentication is not valid : /zookeeper/quota/test > [zk: 10.18.219.50:2181(CONNECTED) 24] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > quota for /test does not exist. > >> Here quota has been deleted though it is saying "Authentication is not > >> valid.." which is not correct. > Now try to set the quota from another ip itself, it fails which is as expected > [zk: 10.18.219.50:2181(CONNECTED) 25] setquota -n 10 /test > Authentication is not valid : /zookeeper/quota/test > [zk: 10.18.219.50:2181(CONNECTED) 26] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > quota for /test does not exist. > >> Sameway when we set user ACL... > [zk: 10.18.101.80:2181(CONNECTED) 26] addauth digest user:pass > [zk: 10.18.101.80:2181(CONNECTED) 27] create /test hello > Node already exists: /test > [zk: 10.18.101.80:2181(CONNECTED) 28] delete /test > [zk: 10.18.101.80:2181(CONNECTED) 29] create /test hello > Created /test > [zk: 10.18.101.80:2181(CONNECTED) 30] > [zk: 10.18.101.80:2181(CONNECTED) 30] setquota -n 10 /test > [zk: 10.18.101.80:2181(CONNECTED) 31] setAcl /zookeeper/quota > auth:user:pass:crdwa > [zk: 10.18.101.80:2181(CONNECTED) 32] > [zk: 10.18.219.50:2181(CONNECTED) 27] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > Output quota for /test count=10,bytes=-1 > Output stat for /test count=1,bytes=5 > [zk: 10.18.219.50:2181(CONNECTED) 28] delquota /test > Authentication is not valid : /zookeeper/quota/test > [zk: 10.18.219.50:2181(CONNECTED) 29] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > quota for /test does not exist. > [zk: 10.18.219.50:2181(CONNECTED) 30] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ZOOKEEPER-2584) when setquota for a znode and set ip/user ACL on /zookeeper/quota, still able to delete the quota from client with another ip though it says "Authentication is not
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16849598#comment-16849598 ] maoling commented on ZOOKEEPER-2584: I got it. 1. the scope of d(delete) of *crdwa* is only the child nodes(first level) under the path you input. If one user do this: *setAcl /zookeeper/quota auth:user:pass:crdwa* ohters cannot have the permission to operate the nodes under */zookeeper/quota*, but still have the delete permission to delete the */zookeeper/quota/test/zookeeper_limits* under */zookeeper/quota/test* *ACL has no Inheritance relationship.* 2.To solve this issue, users can do this: *setAcl /zookeeper/quota/test auth:user1:12345:crwad* or *setAcl -R /zookeeper/quota auth:user1:12345:crwad* (availble in the master branch) > when setquota for a znode and set ip/user ACL on /zookeeper/quota, still able > to delete the quota from client with another ip though it says > "Authentication is not valid" > -- > > Key: ZOOKEEPER-2584 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2584 > Project: ZooKeeper > Issue Type: Bug > Components: server >Affects Versions: 3.5.1 >Reporter: Rakesh Kumar Singh >Assignee: Rakesh Kumar Singh >Priority: Major > > when setquota for a znode and set ip/user ACL on /zookeeper/quota, still able > to delete the quota from client with another ip though it says > "Authentication is not valid" > >> Set quota and ip ACL from one client (with IP 10.18.101.80) > [zk: 10.18.101.80:2181(CONNECTED) 9] setquota -n 10 /test > [zk: 10.18.101.80:2181(CONNECTED) 10] setAcl /zookeeper/quota > ip:10.18.101.80:crdwa > [zk: 10.18.101.80:2181(CONNECTED) 11] > >> Try to delete the set quota using different client(with ip 10.18.219.50) > [zk: 10.18.219.50:2181(CONNECTED) 22] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > Output quota for /test count=10,bytes=-1 > Output stat for /test count=1,bytes=5 > [zk: 10.18.219.50:2181(CONNECTED) 23] delquota /test > Authentication is not valid : /zookeeper/quota/test > [zk: 10.18.219.50:2181(CONNECTED) 24] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > quota for /test does not exist. > >> Here quota has been deleted though it is saying "Authentication is not > >> valid.." which is not correct. > Now try to set the quota from another ip itself, it fails which is as expected > [zk: 10.18.219.50:2181(CONNECTED) 25] setquota -n 10 /test > Authentication is not valid : /zookeeper/quota/test > [zk: 10.18.219.50:2181(CONNECTED) 26] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > quota for /test does not exist. > >> Sameway when we set user ACL... > [zk: 10.18.101.80:2181(CONNECTED) 26] addauth digest user:pass > [zk: 10.18.101.80:2181(CONNECTED) 27] create /test hello > Node already exists: /test > [zk: 10.18.101.80:2181(CONNECTED) 28] delete /test > [zk: 10.18.101.80:2181(CONNECTED) 29] create /test hello > Created /test > [zk: 10.18.101.80:2181(CONNECTED) 30] > [zk: 10.18.101.80:2181(CONNECTED) 30] setquota -n 10 /test > [zk: 10.18.101.80:2181(CONNECTED) 31] setAcl /zookeeper/quota > auth:user:pass:crdwa > [zk: 10.18.101.80:2181(CONNECTED) 32] > [zk: 10.18.219.50:2181(CONNECTED) 27] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > Output quota for /test count=10,bytes=-1 > Output stat for /test count=1,bytes=5 > [zk: 10.18.219.50:2181(CONNECTED) 28] delquota /test > Authentication is not valid : /zookeeper/quota/test > [zk: 10.18.219.50:2181(CONNECTED) 29] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > quota for /test does not exist. > [zk: 10.18.219.50:2181(CONNECTED) 30] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ZOOKEEPER-2564) No message is prompted when trying to delete quota with different quota option
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2564?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16849562#comment-16849562 ] maoling commented on ZOOKEEPER-2564: very trival. No message is prompted is also ok for me. > No message is prompted when trying to delete quota with different quota option > -- > > Key: ZOOKEEPER-2564 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2564 > Project: ZooKeeper > Issue Type: Bug > Components: server >Affects Versions: 3.5.1 >Reporter: Rakesh Kumar Singh >Assignee: Rakesh Kumar Singh >Priority: Minor > > No message is prompted when trying to delete quota with different quota > option. > Steps to reproduce:- > 1. Start zookeeper in cluster mode > 2. Create some node and set quota like > setquota -n 10 /test > 3. Now try to delete as below:- > delquota -b /test > Here no message/exception is prompted. We should prompt message like > "Byte Quota does not exist for /test" -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Issue Comment Deleted] (ZOOKEEPER-2564) No message is prompted when trying to delete quota with different quota option
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2564?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] maoling updated ZOOKEEPER-2564: --- Comment: was deleted (was: [~rakeshsingh],[~chenyuyun-emc], [~hanm] For my test, It seems that we cannot both setquota for count(-n) and size(-b) for one specified nodePath. when want to delete quota,*delquota /path* Is it a design flaw?) > No message is prompted when trying to delete quota with different quota option > -- > > Key: ZOOKEEPER-2564 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2564 > Project: ZooKeeper > Issue Type: Bug > Components: server >Affects Versions: 3.5.1 >Reporter: Rakesh Kumar Singh >Assignee: Rakesh Kumar Singh >Priority: Minor > > No message is prompted when trying to delete quota with different quota > option. > Steps to reproduce:- > 1. Start zookeeper in cluster mode > 2. Create some node and set quota like > setquota -n 10 /test > 3. Now try to delete as below:- > delquota -b /test > Here no message/exception is prompted. We should prompt message like > "Byte Quota does not exist for /test" -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (ZOOKEEPER-2563) A revisit to setquota
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2563?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] maoling updated ZOOKEEPER-2563: --- Summary: A revisit to setquota (was: delquota -[n|b] is not deleting the set quota properly) > A revisit to setquota > - > > Key: ZOOKEEPER-2563 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2563 > Project: ZooKeeper > Issue Type: Bug > Components: server >Affects Versions: 3.5.1 >Reporter: Rakesh Kumar Singh >Assignee: Rakesh Kumar Singh >Priority: Major > Labels: pull-request-available > Time Spent: 10m > Remaining Estimate: 0h > > delquota -[n|b] is not deleting the set quota properly > Steps to reproduce:- > 1. Start zookeeper in cluster mode (ssl) > 2. create some node say /test > 3. Run command as listquota says (as expected) > quota for /test does not exist > 4. setquota let say > setquota -n 10 /test > 5. Now try to delete this as below > delquota -n /test > 6. now check the quota > [zk: localhost:2181(CONNECTED) 1] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > Output quota for /test count=-1,bytes=-1 > Output stat for /test count=1,bytes=5 > 7. Here it is not deleted quota node for test > 8. Now try to set some new quota > It fails as it is not deleted correctly while delete > [zk: localhost:2181(CONNECTED) 3] setquota -n 11 /test > Command failed: java.lang.IllegalArgumentException: /test has a parent > /zookeeper/quota/test which has a quota > But through delquota it is able to delete -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ZOOKEEPER-2563) delquota -[n|b] is not deleting the set quota properly
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16848410#comment-16848410 ] maoling commented on ZOOKEEPER-2563: the origin JIRA title is: *delquota -[n|b] is not deleting the set quota properly* > delquota -[n|b] is not deleting the set quota properly > -- > > Key: ZOOKEEPER-2563 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2563 > Project: ZooKeeper > Issue Type: Bug > Components: server >Affects Versions: 3.5.1 >Reporter: Rakesh Kumar Singh >Assignee: Rakesh Kumar Singh >Priority: Major > Labels: pull-request-available > Time Spent: 10m > Remaining Estimate: 0h > > delquota -[n|b] is not deleting the set quota properly > Steps to reproduce:- > 1. Start zookeeper in cluster mode (ssl) > 2. create some node say /test > 3. Run command as listquota says (as expected) > quota for /test does not exist > 4. setquota let say > setquota -n 10 /test > 5. Now try to delete this as below > delquota -n /test > 6. now check the quota > [zk: localhost:2181(CONNECTED) 1] listquota /test > absolute path is /zookeeper/quota/test/zookeeper_limits > Output quota for /test count=-1,bytes=-1 > Output stat for /test count=1,bytes=5 > 7. Here it is not deleted quota node for test > 8. Now try to set some new quota > It fails as it is not deleted correctly while delete > [zk: localhost:2181(CONNECTED) 3] setquota -n 11 /test > Command failed: java.lang.IllegalArgumentException: /test has a parent > /zookeeper/quota/test which has a quota > But through delquota it is able to delete -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (ZOOKEEPER-3299) "setquota -n|-b val path" need a brackets
[ https://issues.apache.org/jira/browse/ZOOKEEPER-3299?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] maoling resolved ZOOKEEPER-3299. Resolution: Not A Bug > "setquota -n|-b val path" need a brackets > - > > Key: ZOOKEEPER-3299 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3299 > Project: ZooKeeper > Issue Type: Bug >Reporter: maoling >Priority: Trivial > Labels: pull-request-available > Time Spent: 1h > Remaining Estimate: 0h > > What we want is "setquota [-n|-b] val path" -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (ZOOKEEPER-3301) Enforce the quota limit and doc the design of the quota.
[ https://issues.apache.org/jira/browse/ZOOKEEPER-3301?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] maoling updated ZOOKEEPER-3301: --- Summary: Enforce the quota limit and doc the design of the quota. (was: Enforce the quota limit) > Enforce the quota limit and doc the design of the quota. > > > Key: ZOOKEEPER-3301 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3301 > Project: ZooKeeper > Issue Type: Sub-task > Reporter: maoling >Priority: Major > > We need a complete quota feature, not just the printing the warning logs > which is a bit chicken ribs. > [zk: localhost:2181(CONNECTED) 18] setquota -n 2 /quota_test > [zk: localhost:2181(CONNECTED) 19] create /quota_test/child_1 > Created /quota_test/child_1 > [zk: localhost:2181(CONNECTED) 20] create /quota_test/child_2 > Created /quota_test/child_2 > [zk: localhost:2181(CONNECTED) 21] create /quota_test/child_3 > Created /quota_test/child_3 > look at the following logs: > 2019-03-07 11:22:36,680 [myid:1] - WARN [SyncThread:0:DataTree@374] - Quota > exceeded: /quota_test count=3 limit=2 > 2019-03-07 11:22:41,861 [myid:1] - WARN [SyncThread:0:DataTree@374] - Quota > exceeded: /quota_test count=4 limit=2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)