RE: Login object in ZooKeeperSaslClient
I think login object is static to achieve some optimization in refreshing the TGT. Currently multiple ZooKeeper client can run in one JVM but all must share same configuration, principal. Because all the clients share same principal, one login object is enough to serve the purpose. There are many things which cannot be done without making the login object not static. some are 1) Multiple ZooKeeper clients in a single JVM each having different principals, must have separate login object, more detail in ZOOKEEPER-2139 2) Cannot close TGT refresh thread in login object on close of ZooKeeper.close() API call, more detail in ZOOKEEPER-2330 I am +1 for making login object in ZooKeeperSaslClient non static Best Regards Arshad -Original Message- From: Flavio Junqueira [mailto:f...@apache.org] Sent: 23 March 2016 03:22 To: Zookeeper Subject: Login object in ZooKeeperSaslClient Hello, I've been looking at the ZooKeeperSaslClient class, and I've been wondering why the Login object is static in that class. Is it only to avoid having one login thread for each concurrent session? I'd like to make it non-static because this way we can have multiple handles in the same jvm using different configurations. We'd also need to pass the login configuration separately. I had a look at the ZOOKEEPER-938 jira for some insight, but couldn't get any. Any other insight here would be great. -Flavio
[jira] [Commented] (ZOOKEEPER-2397) Undocumented SASL properties
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2397?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15207904#comment-15207904 ] Hadoop QA commented on ZOOKEEPER-2397: -- +1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12794868/ZOOKEEPER-2397.patch against trunk revision 1736259. +1 @author. The patch does not contain any @author tags. +0 tests included. The patch appears to be a documentation patch that doesn't require tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 2.0.3) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed core unit tests. +1 contrib tests. The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3115//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3115//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3115//console This message is automatically generated. > Undocumented SASL properties > > > Key: ZOOKEEPER-2397 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2397 > Project: ZooKeeper > Issue Type: Sub-task > Components: documentation >Affects Versions: 3.4.8, 3.5.1 >Reporter: Flavio Junqueira >Assignee: Flavio Junqueira > Fix For: 3.4.9, 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2397.patch > > > There are a number of properties spread across the code that do not appear in > the docs. For example, zookeeper.allowSaslFailedClients isn't documented > afaict. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2141) ACL cache in DataTree never removes entries
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15207709#comment-15207709 ] Hudson commented on ZOOKEEPER-2141: --- SUCCESS: Integrated in ZooKeeper-trunk #2865 (See [https://builds.apache.org/job/ZooKeeper-trunk/2865/]) ZOOKEEPER-2141. ACL cache in DataTree never removes entries (Adam Milne-Smith via camille) (camille: [http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN=rev=1736259]) * trunk * trunk/CHANGES.txt * trunk/src/java/main/org/apache/zookeeper/server/DataTree.java * trunk/src/java/main/org/apache/zookeeper/server/FinalRequestProcessor.java * trunk/src/java/main/org/apache/zookeeper/server/PrepRequestProcessor.java * trunk/src/java/main/org/apache/zookeeper/server/ReferenceCountedACLCache.java * trunk/src/java/main/org/apache/zookeeper/server/ZKDatabase.java * trunk/src/java/test/org/apache/zookeeper/server/ReferenceCountedACLCacheTest.java > ACL cache in DataTree never removes entries > --- > > Key: ZOOKEEPER-2141 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2141 > Project: ZooKeeper > Issue Type: Bug >Affects Versions: 3.4.6 >Reporter: Karol Dudzinski >Assignee: Adam Milne-Smith > Attachments: ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, > ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch > > > The problem and potential solutions are discussed in > http://mail-archives.apache.org/mod_mbox/zookeeper-user/201502.mbox/browser > I will attach a proposed patch in due course. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2365) JAAS configuration section error is confusing
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2365?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Biju Nair updated ZOOKEEPER-2365: - Attachment: ZOOKEEPER-2365-1.patch Attaching a new patch to address the review comments. [~fpj] [~danfitch] Let me know if any further changes are required. > JAAS configuration section error is confusing > - > > Key: ZOOKEEPER-2365 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2365 > Project: ZooKeeper > Issue Type: Bug > Components: java client >Affects Versions: 3.4.6 > Environment: Ubuntu x86_64 openjdk-7-jre >Reporter: Dan Fitch >Assignee: Biju Nair >Priority: Trivial > Fix For: 3.4.9, 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2365-1.patch, ZOOKEEPER-2365.patch > > > I have zookeeper running normally just fine in a 3-server cluster. > Then I try to configure zookeeper to use Kerberos, following docs in the Solr > wiki here: > https://cwiki.apache.org/confluence/display/solr/Kerberos+Authentication+Plugin > I can't even get to the fun Kerberos errors. When I start with > {{JVMFLAGS="-Djava.security.auth.login.config=/opt/zookeeper/jaas-server.conf"}} > and this jaas-server.conf: > {code} > Server { > com.sun.security.auth.module.Krb5LoginModule required > useKeyTab=true > keyTab=/keytabs/vdev-solr-01.keytab > storeKey=true > doNotPrompt=true > useTicketCache=false > debug=true > principal="HTTP/"; > } > {code} > I get this in the log: > {code} > 2016-02-10 16:16:51,327 [myid:1] - ERROR [main:ServerCnxnFactory@195] - No > JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > 2016-02-10 16:16:51,328 [myid:1] - ERROR [main:QuorumPeerMain@89] - > Unexpected exception, exiting abnormally > java.io.IOException: No JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > at > org.apache.zookeeper.server.ServerCnxnFactory.configureSaslLogin(ServerCnxnFactory.java:196) > at > org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:87) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:130) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78) > {code} > (Note the "foundin" typo.) > I get the exact same error if the jaas-server.conf file exists, or does not. > So later I found that the Solr wiki was wrong and lost the double quotes > around the keytab value. It would be nice if Zookeeper spewed a more useful > message when it can't parse the configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
ZooKeeper_branch35_openjdk7 - Build # 22 - Failure
See https://builds.apache.org/job/ZooKeeper_branch35_openjdk7/22/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 372107 lines...] [exec] Log Message Received: [2016-03-23 00:39:29,905:20959(0x2ab644028540):ZOO_INFO@testLogCallbackInit@993: testLogCallbackInit #8] [exec] Log Message Received: [2016-03-23 00:39:29,905:20959(0x2ab644028540):ZOO_INFO@testLogCallbackInit@993: testLogCallbackInit #9] [exec] Log Message Received: [2016-03-23 00:39:29,905:20959(0x2ab644028540):ZOO_INFO@zookeeper_close@3257: Closing zookeeper sessionId=0x1005913e72c000e to [127.0.0.1:22181] [exec] ] [exec] : elapsed 1001 : OK [exec] Zookeeper_simpleSystem::testLogCallbackClearLog Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1027: Client environment:zookeeper.version=zookeeper C client 3.5.1] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1031: Client environment:host.name=jenkins-ubuntu1] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1038: Client environment:os.name=Linux] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1039: Client environment:os.arch=3.19.0-25-generic] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1040: Client environment:os.version=#26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1048: Client environment:user.name=jenkins] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1056: Client environment:user.home=/home/jenkins] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@log_env@1068: Client environment:user.dir=/home/jenkins/jenkins-slave/workspace/ZooKeeper_branch35_openjdk7/branch-3.5/build/test/test-cppunit] [exec] Log Message Received: [2016-03-23 00:39:29,906:20959(0x2ab644028540):ZOO_INFO@zookeeper_init_internal@: Initiating client connection, host=127.0.0.1:22181 sessionTimeout=1 watcher=0x45d2a0 sessionId=0 sessionPasswd= context=0x7ffcaa77e500 flags=0] [exec] Log Message Received: [2016-03-23 00:39:29,908:20959(0x2ab646086700):ZOO_INFO@check_events@2357: initiated connection to server [127.0.0.1:22181]] [exec] Log Message Received: [2016-03-23 00:39:29,914:20959(0x2ab646086700):ZOO_INFO@check_events@2409: session establishment complete on server [127.0.0.1:22181], sessionId=0x1005913e72c000f, negotiated timeout=1 ] [exec] : elapsed 1003 : OK [exec] Zookeeper_simpleSystem::testAsyncWatcherAutoReset ZooKeeper server started : elapsed 11183 : OK [exec] Zookeeper_simpleSystem::testDeserializeString : elapsed 0 : OK [exec] Zookeeper_simpleSystem::testFirstServerDown : elapsed 1001 : OK [exec] Zookeeper_simpleSystem::testNullData : elapsed 1039 : OK [exec] Zookeeper_simpleSystem::testIPV6 : elapsed 1008 : OK [exec] Zookeeper_simpleSystem::testCreate : elapsed 1014 : OK [exec] Zookeeper_simpleSystem::testPath : elapsed 1027 : OK [exec] Zookeeper_simpleSystem::testPathValidation : elapsed 1079 : OK [exec] Zookeeper_simpleSystem::testPing : elapsed 17374 : OK [exec] Zookeeper_simpleSystem::testAcl : elapsed 1027 : OK [exec] Zookeeper_simpleSystem::testChroot : elapsed 3068 : OK [exec] Zookeeper_simpleSystem::testAuth ZooKeeper server started ZooKeeper server started : elapsed 32373 : OK [exec] Zookeeper_simpleSystem::testHangingClient : elapsed 1044 : OK [exec] Zookeeper_simpleSystem::testWatcherAutoResetWithGlobal ZooKeeper server started ZooKeeper server started ZooKeeper server started : elapsed 17628 : OK [exec] Zookeeper_simpleSystem::testWatcherAutoResetWithLocal ZooKeeper server started ZooKeeper server started ZooKeeper server started : elapsed 17555 : OK [exec] Zookeeper_simpleSystem::testGetChildren2 : elapsed 1053 : OK [exec] Zookeeper_simpleSystem::testLastZxid : elapsed 4522 : OK [exec] Zookeeper_simpleSystem::testRemoveWatchers ZooKeeper server started : elapsed 5293 : OK [exec] Zookeeper_readOnly::testReadOnly : elapsed 4219 : OK [exec] /home/jenkins/jenkins-slave/workspace/ZooKeeper_branch35_openjdk7/branch-3.5/src/c/tests/TestReconfig.cc:183: Assertion: equality assertion failed [Expected: 1, Actual : 0] [exec] Failures !!! [exec] Run: 72 Failure total: 1 Failures: 1 Errors: 0 [exec] FAIL: zktest-mt [exec] == [exec] 1 of 2 tests failed [exec] Please report to u...@zookeeper.apache.org [exec] == [exec] make[1]:
ZooKeeper-trunk-openjdk7 - Build # 965 - Still Failing
See https://builds.apache.org/job/ZooKeeper-trunk-openjdk7/965/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 1515 lines...] [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] commons-cli#commons-cli;1.2!commons-cli.jar (33ms) [ivy:retrieve] downloading http://repo1.maven.org/maven2/log4j/log4j/1.2.17/log4j-1.2.17.jar ... [ivy:retrieve] . (478kB) [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] log4j#log4j;1.2.17!log4j.jar(bundle) (37ms) [ivy:retrieve] downloading http://repo1.maven.org/maven2/io/netty/netty/3.7.1.Final/netty-3.7.1.Final.jar ... [ivy:retrieve] .. (1181kB) [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] io.netty#netty;3.7.1.Final!netty.jar (51ms) [ivy:retrieve] downloading http://repo1.maven.org/maven2/net/java/dev/javacc/javacc/5.0/javacc-5.0.jar ... [ivy:retrieve] .. (291kB) [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] net.java.dev.javacc#javacc;5.0!javacc.jar (73ms) [ivy:retrieve] :: resolution report :: resolve 4983ms :: artifacts dl 550ms - | |modules|| artifacts | | conf | number| search|dwnlded|evicted|| number|dwnlded| - | default | 12 | 12 | 12 | 0 || 12 | 12 | - [ivy:retrieve] :: retrieving :: org.apache.zookeeper#zookeeper [ivy:retrieve] confs: [default] [ivy:retrieve] 12 artifacts copied, 0 already retrieved (4049kB/30ms) clover.setup: clover.info: clover: generate_jute_parser: [mkdir] Created dir: /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/build/jute_compiler/org/apache/jute/compiler/generated [ivy:artifactproperty] DEPRECATED: 'ivy.conf.file' is deprecated, use 'ivy.settings.file' instead [ivy:artifactproperty] :: loading settings :: file = /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/ivysettings.xml [move] Moving 1 file to /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/build/lib [javacc] Java Compiler Compiler Version 5.0 (Parser Generator) [javacc] (type "javacc" with no arguments for help) [javacc] Reading from file /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/src/java/main/org/apache/jute/compiler/generated/rcc.jj . . . [javacc] File "TokenMgrError.java" does not exist. Will create one. [javacc] File "ParseException.java" does not exist. Will create one. [javacc] File "Token.java" does not exist. Will create one. [javacc] File "SimpleCharStream.java" does not exist. Will create one. [javacc] Parser generated successfully. jute: BUILD FAILED /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/build.xml:272: Unable to find a javac compiler; com.sun.tools.javac.Main is not on the classpath. Perhaps JAVA_HOME does not point to the JDK. It is currently set to "/usr/lib/jvm/java-7-openjdk-amd64/jre" Total time: 7 seconds Build step 'Invoke Ant' marked build as failure Recording test results ERROR: Step ‘Publish JUnit test result report’ failed: No test report files were found. Configuration error? Email was triggered for: Failure - Any Sending email for trigger: Failure - Any ### ## FAILED TESTS (if any) ## No tests ran.
[jira] [Commented] (ZOOKEEPER-2141) ACL cache in DataTree never removes entries
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15207534#comment-15207534 ] Camille Fournier commented on ZOOKEEPER-2141: - Into 3.5 as well. Just waiting on 3.4. > ACL cache in DataTree never removes entries > --- > > Key: ZOOKEEPER-2141 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2141 > Project: ZooKeeper > Issue Type: Bug >Affects Versions: 3.4.6 >Reporter: Karol Dudzinski >Assignee: Adam Milne-Smith > Attachments: ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, > ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch > > > The problem and potential solutions are discussed in > http://mail-archives.apache.org/mod_mbox/zookeeper-user/201502.mbox/browser > I will attach a proposed patch in due course. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2141) ACL cache in DataTree never removes entries
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15207522#comment-15207522 ] Camille Fournier commented on ZOOKEEPER-2141: - Reviewed the patch against trunk, +1 on that and checked in. Waiting on patch against 3.4. Checking existing patch against 3.5. > ACL cache in DataTree never removes entries > --- > > Key: ZOOKEEPER-2141 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2141 > Project: ZooKeeper > Issue Type: Bug >Affects Versions: 3.4.6 >Reporter: Karol Dudzinski >Assignee: Adam Milne-Smith > Attachments: ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, > ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch > > > The problem and potential solutions are discussed in > http://mail-archives.apache.org/mod_mbox/zookeeper-user/201502.mbox/browser > I will attach a proposed patch in due course. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2365) JAAS configuration section error is confusing
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15207509#comment-15207509 ] Biju Nair commented on ZOOKEEPER-2365: -- In the patch, the message from the original exception is being added to the start of the {{errorMessage}} before passing to the IOException. ``` ... String errorMessage = securityException.getMessage(); ... ``` Was something else missed [~fpj]? Thx > JAAS configuration section error is confusing > - > > Key: ZOOKEEPER-2365 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2365 > Project: ZooKeeper > Issue Type: Bug > Components: java client >Affects Versions: 3.4.6 > Environment: Ubuntu x86_64 openjdk-7-jre >Reporter: Dan Fitch >Assignee: Biju Nair >Priority: Trivial > Fix For: 3.4.9, 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2365.patch > > > I have zookeeper running normally just fine in a 3-server cluster. > Then I try to configure zookeeper to use Kerberos, following docs in the Solr > wiki here: > https://cwiki.apache.org/confluence/display/solr/Kerberos+Authentication+Plugin > I can't even get to the fun Kerberos errors. When I start with > {{JVMFLAGS="-Djava.security.auth.login.config=/opt/zookeeper/jaas-server.conf"}} > and this jaas-server.conf: > {code} > Server { > com.sun.security.auth.module.Krb5LoginModule required > useKeyTab=true > keyTab=/keytabs/vdev-solr-01.keytab > storeKey=true > doNotPrompt=true > useTicketCache=false > debug=true > principal="HTTP/"; > } > {code} > I get this in the log: > {code} > 2016-02-10 16:16:51,327 [myid:1] - ERROR [main:ServerCnxnFactory@195] - No > JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > 2016-02-10 16:16:51,328 [myid:1] - ERROR [main:QuorumPeerMain@89] - > Unexpected exception, exiting abnormally > java.io.IOException: No JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > at > org.apache.zookeeper.server.ServerCnxnFactory.configureSaslLogin(ServerCnxnFactory.java:196) > at > org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:87) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:130) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78) > {code} > (Note the "foundin" typo.) > I get the exact same error if the jaas-server.conf file exists, or does not. > So later I found that the Solr wiki was wrong and lost the double quotes > around the keytab value. It would be nice if Zookeeper spewed a more useful > message when it can't parse the configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2399) Partial Initial Patches to update Zookeeper trunk to Netty 4.x API
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2399?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chris Nauroth updated ZOOKEEPER-2399: - Priority: Major (was: Blocker) > Partial Initial Patches to update Zookeeper trunk to Netty 4.x API > -- > > Key: ZOOKEEPER-2399 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2399 > Project: ZooKeeper > Issue Type: Improvement >Reporter: William L Thomson Jr > Attachments: ClientCnxnSocketNetty_java.patch, > NettyServerCnxnFactory_java.patch, NettyServerCnxn_java.patch > > > These are initial patches to update Zookeeper to Netty 4.x API. They are not > complete, as I am not familiar with Zookeeper or Netty. I just used Netty > documents that detailed the difference in the API to make the changes. I > believe I am 80-90% of the way there, but need someone familiar with > Zookeeper and/or Netty to finish the last part and make sure it actually > works and I did not fubar Zookeeper :) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2399) Partial Initial Patches to update Zookeeper trunk to Netty 4.x API
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2399?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] William L Thomson Jr updated ZOOKEEPER-2399: Attachment: NettyServerCnxn_java.patch src/java/main/org/apache/zookeeper/server/NettyServerCnxn.java > Partial Initial Patches to update Zookeeper trunk to Netty 4.x API > -- > > Key: ZOOKEEPER-2399 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2399 > Project: ZooKeeper > Issue Type: Improvement >Reporter: William L Thomson Jr >Priority: Blocker > Attachments: ClientCnxnSocketNetty_java.patch, > NettyServerCnxnFactory_java.patch, NettyServerCnxn_java.patch > > > These are initial patches to update Zookeeper to Netty 4.x API. They are not > complete, as I am not familiar with Zookeeper or Netty. I just used Netty > documents that detailed the difference in the API to make the changes. I > believe I am 80-90% of the way there, but need someone familiar with > Zookeeper and/or Netty to finish the last part and make sure it actually > works and I did not fubar Zookeeper :) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2399) Partial Initial Patches to update Zookeeper trunk to Netty 4.x API
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2399?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] William L Thomson Jr updated ZOOKEEPER-2399: Attachment: NettyServerCnxnFactory_java.patch src/java/main/org/apache/zookeeper/server/NettyServerCnxnFactory.java > Partial Initial Patches to update Zookeeper trunk to Netty 4.x API > -- > > Key: ZOOKEEPER-2399 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2399 > Project: ZooKeeper > Issue Type: Improvement >Reporter: William L Thomson Jr >Priority: Blocker > Attachments: ClientCnxnSocketNetty_java.patch, > NettyServerCnxnFactory_java.patch, NettyServerCnxn_java.patch > > > These are initial patches to update Zookeeper to Netty 4.x API. They are not > complete, as I am not familiar with Zookeeper or Netty. I just used Netty > documents that detailed the difference in the API to make the changes. I > believe I am 80-90% of the way there, but need someone familiar with > Zookeeper and/or Netty to finish the last part and make sure it actually > works and I did not fubar Zookeeper :) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2399) Partial Initial Patches to update Zookeeper trunk to Netty 4.x API
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2399?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] William L Thomson Jr updated ZOOKEEPER-2399: Attachment: ClientCnxnSocketNetty_java.patch src/java/main/org/apache/zookeeper/ClientCnxnSocketNetty.java > Partial Initial Patches to update Zookeeper trunk to Netty 4.x API > -- > > Key: ZOOKEEPER-2399 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2399 > Project: ZooKeeper > Issue Type: Improvement >Reporter: William L Thomson Jr >Priority: Blocker > Attachments: ClientCnxnSocketNetty_java.patch > > > These are initial patches to update Zookeeper to Netty 4.x API. They are not > complete, as I am not familiar with Zookeeper or Netty. I just used Netty > documents that detailed the difference in the API to make the changes. I > believe I am 80-90% of the way there, but need someone familiar with > Zookeeper and/or Netty to finish the last part and make sure it actually > works and I did not fubar Zookeeper :) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2397) Undocumented SASL properties
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2397?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Flavio Junqueira updated ZOOKEEPER-2397: Attachment: ZOOKEEPER-2397.patch > Undocumented SASL properties > > > Key: ZOOKEEPER-2397 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2397 > Project: ZooKeeper > Issue Type: Sub-task > Components: documentation >Reporter: Flavio Junqueira >Assignee: Flavio Junqueira > Fix For: 3.4.9, 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2397.patch > > > There are a number of properties spread across the code that do not appear in > the docs. For example, zookeeper.allowSaslFailedClients isn't documented > afaict. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
Login object in ZooKeeperSaslClient
Hello, I've been looking at the ZooKeeperSaslClient class, and I've been wondering why the Login object is static in that class. Is it only to avoid having one login thread for each concurrent session? I'd like to make it non-static because this way we can have multiple handles in the same jvm using different configurations. We'd also need to pass the login configuration separately. I had a look at the ZOOKEEPER-938 jira for some insight, but couldn't get any. Any other insight here would be great. -Flavio
Re: Updating Zookeeper for Newer Netty > 3.x
Hello William, Thank you for your interest in contributing to ZooKeeper! In which version of ZooKeeper did you see this dependency on an old Netty version? My best guess is that it was some version in the ZooKeeper 3.3 line. At that time, BookKeeper was included as a contrib module inside ZooKeeper, and BookKeeper had this dependency in its ivy.xml: This is no longer an issue in more recent ZooKeeper releases (the 3.4 and 3.5 lines). BookKeeper has moved to its own top-level Apache project, so patches related to its dependencies wouldn't go here in ZooKeeper. At this point, ZooKeeper does also use Netty itself directly, but it's a newer version (3.7.0.Final in ZooKeeper 3.4 and 3.7.1.Final in ZooKeeper 3.5). If the above makes sense, then I suspect there wouldn't be a need for your patch anymore. However, even if that's the case, thank you for offering to donate it. Apache projects love seeing new contributors. If you have the time and the interest, I'd encourage you to look for other ways to contribute to ZooKeeper or any other Apache project. More details on our contribution process are available here: https://wiki.apache.org/hadoop/ZooKeeper/HowToContribute --Chris Nauroth On 3/22/16, 12:09 PM, "William L. Thomson Jr."wrote: >I was looking into packaging Hadoop on Gentoo which had a few >dependencies. >One of which is Zookeeper, a indirect dependency of Curator. The first >thing I >noticed was Zookeeper depends on an older version of Netty in the >org.jboss >package. Gentoo does not have this old version of Netty packaged. Rather >than >package an older Netty for Zookeeper. I started updating Zookeeper code >for >Netty. > >But I am not familiar with Netty or Zookeeper, so in short I have no idea >what >I am doing or did... I did find some documents that were very helpful in >the >changes with Netty. I have done I believe most of the work ~80-90%, but >still >a few things to code for newer Netty. Not to mention test the changes, >and not >being familiar with Zookeeper. Not sure how I can easily test the changes >to >Zookeeper usage of Netty. > >I did this some time back and I have not touched it since. I rather pass >on my >work rather than toss. It is not complete enough to commit to say github >and >submit a PR. Not sure if I can post patches here to the list, or if there >is >someone I can email or pastebin the patches to that can do something with >them. Ideally finish off my work and get Zookeeper updated for a newer >Netty. > >What I did not do, was to update the build system for a newer Netty. >Gentoo >does not use gradle, maven, ivy, etc. I had modified the ant build.xml to >bypass ivy and just use ant with dependencies provided by portage, >Gentoo's >packaging system. > >Hopefully you all are receptive to updating Zookeeper to use a newer >version >of Netty, and my effort thus far will be beneficial to others. > >-- >William L. Thomson Jr. >Obsidian-Studios, Inc. >http://www.obsidian-studios.com >
[jira] [Commented] (ZOOKEEPER-2365) JAAS configuration section error is confusing
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15207187#comment-15207187 ] Biju Nair commented on ZOOKEEPER-2365: -- bq. why are you not propagating the message in the original SecurityException? As you mentioned, left the current code as it is which throws a [new IOException|https://github.com/apache/zookeeper/blob/acf732eafbe0e64a0259418cc82bb3448c2f626c/src/java/main/org/apache/zookeeper/server/ServerCnxnFactory.java#L228-L229]. [~fpj] Thanks for the comments. Will submit a new patch > JAAS configuration section error is confusing > - > > Key: ZOOKEEPER-2365 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2365 > Project: ZooKeeper > Issue Type: Bug > Components: java client >Affects Versions: 3.4.6 > Environment: Ubuntu x86_64 openjdk-7-jre >Reporter: Dan Fitch >Assignee: Biju Nair >Priority: Trivial > Fix For: 3.4.9, 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2365.patch > > > I have zookeeper running normally just fine in a 3-server cluster. > Then I try to configure zookeeper to use Kerberos, following docs in the Solr > wiki here: > https://cwiki.apache.org/confluence/display/solr/Kerberos+Authentication+Plugin > I can't even get to the fun Kerberos errors. When I start with > {{JVMFLAGS="-Djava.security.auth.login.config=/opt/zookeeper/jaas-server.conf"}} > and this jaas-server.conf: > {code} > Server { > com.sun.security.auth.module.Krb5LoginModule required > useKeyTab=true > keyTab=/keytabs/vdev-solr-01.keytab > storeKey=true > doNotPrompt=true > useTicketCache=false > debug=true > principal="HTTP/"; > } > {code} > I get this in the log: > {code} > 2016-02-10 16:16:51,327 [myid:1] - ERROR [main:ServerCnxnFactory@195] - No > JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > 2016-02-10 16:16:51,328 [myid:1] - ERROR [main:QuorumPeerMain@89] - > Unexpected exception, exiting abnormally > java.io.IOException: No JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > at > org.apache.zookeeper.server.ServerCnxnFactory.configureSaslLogin(ServerCnxnFactory.java:196) > at > org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:87) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:130) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78) > {code} > (Note the "foundin" typo.) > I get the exact same error if the jaas-server.conf file exists, or does not. > So later I found that the Solr wiki was wrong and lost the double quotes > around the keytab value. It would be nice if Zookeeper spewed a more useful > message when it can't parse the configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
ZooKeeper-trunk-openjdk7 - Build # 964 - Failure
See https://builds.apache.org/job/ZooKeeper-trunk-openjdk7/964/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 1514 lines...] [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] commons-cli#commons-cli;1.2!commons-cli.jar (10ms) [ivy:retrieve] downloading http://repo1.maven.org/maven2/log4j/log4j/1.2.17/log4j-1.2.17.jar ... [ivy:retrieve] ... (478kB) [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] log4j#log4j;1.2.17!log4j.jar(bundle) (17ms) [ivy:retrieve] downloading http://repo1.maven.org/maven2/io/netty/netty/3.7.1.Final/netty-3.7.1.Final.jar ... [ivy:retrieve] (1181kB) [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] io.netty#netty;3.7.1.Final!netty.jar (29ms) [ivy:retrieve] downloading http://repo1.maven.org/maven2/net/java/dev/javacc/javacc/5.0/javacc-5.0.jar ... [ivy:retrieve] (291kB) [ivy:retrieve] .. (0kB) [ivy:retrieve] [SUCCESSFUL ] net.java.dev.javacc#javacc;5.0!javacc.jar (15ms) [ivy:retrieve] :: resolution report :: resolve 4724ms :: artifacts dl 236ms - | |modules|| artifacts | | conf | number| search|dwnlded|evicted|| number|dwnlded| - | default | 12 | 12 | 12 | 0 || 12 | 12 | - [ivy:retrieve] :: retrieving :: org.apache.zookeeper#zookeeper [ivy:retrieve] confs: [default] [ivy:retrieve] 12 artifacts copied, 0 already retrieved (4049kB/32ms) clover.setup: clover.info: clover: generate_jute_parser: [mkdir] Created dir: /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/build/jute_compiler/org/apache/jute/compiler/generated [ivy:artifactproperty] DEPRECATED: 'ivy.conf.file' is deprecated, use 'ivy.settings.file' instead [ivy:artifactproperty] :: loading settings :: file = /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/ivysettings.xml [move] Moving 1 file to /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/build/lib [javacc] Java Compiler Compiler Version 5.0 (Parser Generator) [javacc] (type "javacc" with no arguments for help) [javacc] Reading from file /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/src/java/main/org/apache/jute/compiler/generated/rcc.jj . . . [javacc] File "TokenMgrError.java" does not exist. Will create one. [javacc] File "ParseException.java" does not exist. Will create one. [javacc] File "Token.java" does not exist. Will create one. [javacc] File "SimpleCharStream.java" does not exist. Will create one. [javacc] Parser generated successfully. jute: BUILD FAILED /home/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-openjdk7/trunk/build.xml:272: Unable to find a javac compiler; com.sun.tools.javac.Main is not on the classpath. Perhaps JAVA_HOME does not point to the JDK. It is currently set to "/usr/lib/jvm/java-7-openjdk-amd64/jre" Total time: 7 seconds Build step 'Invoke Ant' marked build as failure Recording test results ERROR: Step ‘Publish JUnit test result report’ failed: No test report files were found. Configuration error? Email was triggered for: Failure - Any Sending email for trigger: Failure - Any ### ## FAILED TESTS (if any) ## No tests ran.
Updating Zookeeper for Newer Netty > 3.x
I was looking into packaging Hadoop on Gentoo which had a few dependencies. One of which is Zookeeper, a indirect dependency of Curator. The first thing I noticed was Zookeeper depends on an older version of Netty in the org.jboss package. Gentoo does not have this old version of Netty packaged. Rather than package an older Netty for Zookeeper. I started updating Zookeeper code for Netty. But I am not familiar with Netty or Zookeeper, so in short I have no idea what I am doing or did... I did find some documents that were very helpful in the changes with Netty. I have done I believe most of the work ~80-90%, but still a few things to code for newer Netty. Not to mention test the changes, and not being familiar with Zookeeper. Not sure how I can easily test the changes to Zookeeper usage of Netty. I did this some time back and I have not touched it since. I rather pass on my work rather than toss. It is not complete enough to commit to say github and submit a PR. Not sure if I can post patches here to the list, or if there is someone I can email or pastebin the patches to that can do something with them. Ideally finish off my work and get Zookeeper updated for a newer Netty. What I did not do, was to update the build system for a newer Netty. Gentoo does not use gradle, maven, ivy, etc. I had modified the ant build.xml to bypass ivy and just use ant with dependencies provided by portage, Gentoo's packaging system. Hopefully you all are receptive to updating Zookeeper to use a newer version of Netty, and my effort thus far will be beneficial to others. -- William L. Thomson Jr. Obsidian-Studios, Inc. http://www.obsidian-studios.com
[jira] [Commented] (ZOOKEEPER-2342) Migrate to Log4J 2.
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2342?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206883#comment-15206883 ] Chris Nauroth commented on ZOOKEEPER-2342: -- bq. We don't have to revert the usage of slf4j; just the choice of default bindings needs to be revisited. Yes, this is what was done in ZOOKEEPER-2393. All of the code still calls SLF4J as the logging API, and we'll stick to that in future patches too. We just reverted the part that omitted the SLF4J Log4J 1 binding from the distro. > Migrate to Log4J 2. > --- > > Key: ZOOKEEPER-2342 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2342 > Project: ZooKeeper > Issue Type: Bug >Reporter: Chris Nauroth >Assignee: Chris Nauroth > Fix For: 3.6.0 > > Attachments: ZOOKEEPER-2342.001.patch > > > ZOOKEEPER-1371 removed our source code dependency on Log4J. It appears that > this also removed the Log4J SLF4J binding jar from the runtime classpath. > Without any SLF4J binding jar available on the runtime classpath, it is > impossible to write logs. > This JIRA investigated migration to Log4J 2 as a possible path towards > resolving the bug introduced by ZOOKEEPER-1371. At this point, we know this > is not feasible short-term. This JIRA remains open to track long-term > migration to Log4J 2. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2159) Pluggable SASL Authentication
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2159?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206738#comment-15206738 ] Yuliya Feldman commented on ZOOKEEPER-2159: --- [~fpj] considering you marked this one as a Blocker (not sure if by mistake or not). Could you please review it? > Pluggable SASL Authentication > - > > Key: ZOOKEEPER-2159 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2159 > Project: ZooKeeper > Issue Type: Improvement > Components: java client, server >Reporter: Yuliya Feldman >Assignee: Yuliya Feldman >Priority: Blocker > Fix For: 3.5.2, 3.6.0 > > Attachments: PluggableZookeeperAuthentication (1).pdf, > PluggableZookeeperAuthentication.pdf > > > Today SASLAuthenticationProvider is used for all SASL based authentications > which creates some "if/else" statements in ZookeeperSaslClient and > ZookeeperSaslServer code with just Kerberos and Digest. > We want to use yet another different SASL based authentication and adding one > more "if/else" with some code specific just to that new way does not make > much sense. > Proposal is to allow to plug custom SASL Authentication mechanism(s) without > further changes in Zookeeper code. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
ZooKeeper_branch34_openjdk7 - Build # 1020 - Still Failing
See https://builds.apache.org/job/ZooKeeper_branch34_openjdk7/1020/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 212466 lines...] [junit] 2016-03-22 15:43:43,217 [myid:] - INFO [main:JMXEnv@246] - expect:StandaloneServer_port [junit] 2016-03-22 15:43:43,217 [myid:] - INFO [main:JMXEnv@250] - found:StandaloneServer_port org.apache.ZooKeeperService:name0=StandaloneServer_port11221 [junit] 2016-03-22 15:43:43,218 [myid:] - INFO [main:ClientBase@490] - STOPPING server [junit] 2016-03-22 15:43:43,218 [myid:] - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:11221:NIOServerCnxnFactory@219] - NIOServerCnxn factory exited run method [junit] 2016-03-22 15:43:43,218 [myid:] - INFO [main:ZooKeeperServer@469] - shutting down [junit] 2016-03-22 15:43:43,218 [myid:] - INFO [main:SessionTrackerImpl@225] - Shutting down [junit] 2016-03-22 15:43:43,218 [myid:] - INFO [main:PrepRequestProcessor@767] - Shutting down [junit] 2016-03-22 15:43:43,218 [myid:] - INFO [main:SyncRequestProcessor@209] - Shutting down [junit] 2016-03-22 15:43:43,219 [myid:] - INFO [ProcessThread(sid:0 cport:11221)::PrepRequestProcessor@143] - PrepRequestProcessor exited loop! [junit] 2016-03-22 15:43:43,219 [myid:] - INFO [SyncThread:0:SyncRequestProcessor@187] - SyncRequestProcessor exited! [junit] 2016-03-22 15:43:43,219 [myid:] - INFO [main:FinalRequestProcessor@415] - shutdown of request processor complete [junit] 2016-03-22 15:43:43,219 [myid:] - INFO [main:FourLetterWordMain@62] - connecting to 127.0.0.1 11221 [junit] 2016-03-22 15:43:43,220 [myid:] - INFO [main:JMXEnv@146] - ensureOnly:[] [junit] 2016-03-22 15:43:43,221 [myid:] - INFO [main:ClientBase@443] - STARTING server [junit] 2016-03-22 15:43:43,221 [myid:] - INFO [main:ClientBase@364] - CREATING server instance 127.0.0.1:11221 [junit] 2016-03-22 15:43:43,221 [myid:] - INFO [main:NIOServerCnxnFactory@89] - binding to port 0.0.0.0/0.0.0.0:11221 [junit] 2016-03-22 15:43:43,222 [myid:] - INFO [main:ClientBase@339] - STARTING server instance 127.0.0.1:11221 [junit] 2016-03-22 15:43:43,222 [myid:] - INFO [main:ZooKeeperServer@170] - Created server with tickTime 3000 minSessionTimeout 6000 maxSessionTimeout 6 datadir /x1/jenkins/jenkins-slave/workspace/ZooKeeper_branch34_openjdk7/branch-3.4/build/test/tmp/test7538794420247370939.junit.dir/version-2 snapdir /x1/jenkins/jenkins-slave/workspace/ZooKeeper_branch34_openjdk7/branch-3.4/build/test/tmp/test7538794420247370939.junit.dir/version-2 [junit] 2016-03-22 15:43:43,225 [myid:] - INFO [main:FourLetterWordMain@62] - connecting to 127.0.0.1 11221 [junit] 2016-03-22 15:43:43,225 [myid:] - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:11221:NIOServerCnxnFactory@192] - Accepted socket connection from /127.0.0.1:41694 [junit] 2016-03-22 15:43:43,226 [myid:] - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:11221:NIOServerCnxn@827] - Processing stat command from /127.0.0.1:41694 [junit] 2016-03-22 15:43:43,226 [myid:] - INFO [Thread-4:NIOServerCnxn$StatCommand@663] - Stat command output [junit] 2016-03-22 15:43:43,226 [myid:] - INFO [Thread-4:NIOServerCnxn@1008] - Closed socket connection for client /127.0.0.1:41694 (no session established for client) [junit] 2016-03-22 15:43:43,227 [myid:] - INFO [main:JMXEnv@229] - ensureParent:[InMemoryDataTree, StandaloneServer_port] [junit] 2016-03-22 15:43:43,228 [myid:] - INFO [main:JMXEnv@246] - expect:InMemoryDataTree [junit] 2016-03-22 15:43:43,228 [myid:] - INFO [main:JMXEnv@250] - found:InMemoryDataTree org.apache.ZooKeeperService:name0=StandaloneServer_port11221,name1=InMemoryDataTree [junit] 2016-03-22 15:43:43,228 [myid:] - INFO [main:JMXEnv@246] - expect:StandaloneServer_port [junit] 2016-03-22 15:43:43,229 [myid:] - INFO [main:JMXEnv@250] - found:StandaloneServer_port org.apache.ZooKeeperService:name0=StandaloneServer_port11221 [junit] 2016-03-22 15:43:43,229 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@58] - Memory used 26413 [junit] 2016-03-22 15:43:43,229 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@63] - Number of threads 20 [junit] 2016-03-22 15:43:43,229 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@78] - FINISHED TEST METHOD testQuota [junit] 2016-03-22 15:43:43,229 [myid:] - INFO [main:ClientBase@520] - tearDown starting [junit] 2016-03-22 15:43:43,307 [myid:] - INFO [main:ZooKeeper@684] - Session: 0x1539efef75c closed [junit] 2016-03-22 15:43:43,307 [myid:] - INFO [main-EventThread:ClientCnxn$EventThread@519] - EventThread shut down for session: 0x1539efef75c [junit] 2016-03-22 15:43:43,307 [myid:] - INFO [main:ClientBase@490] - STOPPING server [junit] 2016-03-22 15:43:43,308 [myid:] - INFO
[jira] [Commented] (ZOOKEEPER-2342) Migrate to Log4J 2.
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2342?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206576#comment-15206576 ] Arvind Jayaprakash commented on ZOOKEEPER-2342: --- It should be possible to retain bulk of the changes to sl4fj while making it bind to log4j-v1. We don't have to revert the usage of slf4j; just the choice of default bindings needs to be revisited. I'm not sure if we have to revert the code references to slf4j to accomplish this. > Migrate to Log4J 2. > --- > > Key: ZOOKEEPER-2342 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2342 > Project: ZooKeeper > Issue Type: Bug >Reporter: Chris Nauroth >Assignee: Chris Nauroth > Fix For: 3.6.0 > > Attachments: ZOOKEEPER-2342.001.patch > > > ZOOKEEPER-1371 removed our source code dependency on Log4J. It appears that > this also removed the Log4J SLF4J binding jar from the runtime classpath. > Without any SLF4J binding jar available on the runtime classpath, it is > impossible to write logs. > This JIRA investigated migration to Log4J 2 as a possible path towards > resolving the bug introduced by ZOOKEEPER-1371. At this point, we know this > is not feasible short-term. This JIRA remains open to track long-term > migration to Log4J 2. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-1378) Provide option to turn off sending of diffs
[ https://issues.apache.org/jira/browse/ZOOKEEPER-1378?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206441#comment-15206441 ] Patrick Hunt commented on ZOOKEEPER-1378: - Regardless whether it is or not I think it's a good idea to have such a safety valve. I saw this with a couple of users in 3.4.6 or so. I don't believe we've addressed the core issue and it's unlikely we have sufficient tests to find this. iirc it was a very unlikely corner case. One of the situations I remember seeing it the user had undergone leader election > 3000 times before seeing the issue. > Provide option to turn off sending of diffs > --- > > Key: ZOOKEEPER-1378 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1378 > Project: ZooKeeper > Issue Type: Task >Reporter: Ted Yu > Fix For: 3.5.2, 3.6.0 > > > From Patrick: > we need to have an option to turn off sending of diffs. There are a couple of > really strong reasons I can think of to do this: > 1) 3.3.x is broken in a similar way, there is an upgrade problem we can't > solve short of having ppl first upgrade to a fixed 3.3 (3.3.5 say) and then > upgrading to 3.4.x. If we could turn off diff sending this would address the > problem. > 2) safety valve. Say we find another new problem with diff sending in > 3.4/3/5. Having an option to turn it off would be useful for people as a > workaround until a fix is found and released. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2398) Config options should not be only available via system property
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206424#comment-15206424 ] Jason Rosenberg commented on ZOOKEEPER-2398: Well, would be nice to have it sooner than later (but I'm working around it at the moment). > Config options should not be only available via system property > --- > > Key: ZOOKEEPER-2398 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2398 > Project: ZooKeeper > Issue Type: Improvement >Reporter: Jason Rosenberg >Priority: Minor > Fix For: 3.6.0, 3.5.3 > > > Some config options (such as enabling readonly mode) are only settable via a > system property. This feels clunky, and makes it less seamless for testing, > or for apps which embed a ZooKeeper inside a java container, etc. > I ran into this issue specifically in the case of creating unit tests to test > read-only mode client side behavior. In this case, I want to run multiple > QuorumPeer's in the same jvm, and have some of them enabled for read-only and > some not enabled. This is not possible with the current System.setProperty > approach. > In general, I question the need for using system properties for > configuration, since it makes embedding a server within a dependency > injection framework more difficult, and is in general less easy to integrate > into generic deployment systems. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2398) Config options should not be only available via system property
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206328#comment-15206328 ] Flavio Junqueira commented on ZOOKEEPER-2398: - [~jbrosenb...@gmail.com] I've marked it for 3.5.3 and trunk, but I'm wondering if you expect this to be in the 3.4 branch as well. > Config options should not be only available via system property > --- > > Key: ZOOKEEPER-2398 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2398 > Project: ZooKeeper > Issue Type: Improvement >Reporter: Jason Rosenberg >Priority: Minor > Fix For: 3.6.0, 3.5.3 > > > Some config options (such as enabling readonly mode) are only settable via a > system property. This feels clunky, and makes it less seamless for testing, > or for apps which embed a ZooKeeper inside a java container, etc. > I ran into this issue specifically in the case of creating unit tests to test > read-only mode client side behavior. In this case, I want to run multiple > QuorumPeer's in the same jvm, and have some of them enabled for read-only and > some not enabled. This is not possible with the current System.setProperty > approach. > In general, I question the need for using system properties for > configuration, since it makes embedding a server within a dependency > injection framework more difficult, and is in general less easy to integrate > into generic deployment systems. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2398) Config options should not be only available via system property
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Flavio Junqueira updated ZOOKEEPER-2398: Fix Version/s: 3.5.3 3.6.0 > Config options should not be only available via system property > --- > > Key: ZOOKEEPER-2398 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2398 > Project: ZooKeeper > Issue Type: Improvement >Reporter: Jason Rosenberg >Priority: Minor > Fix For: 3.6.0, 3.5.3 > > > Some config options (such as enabling readonly mode) are only settable via a > system property. This feels clunky, and makes it less seamless for testing, > or for apps which embed a ZooKeeper inside a java container, etc. > I ran into this issue specifically in the case of creating unit tests to test > read-only mode client side behavior. In this case, I want to run multiple > QuorumPeer's in the same jvm, and have some of them enabled for read-only and > some not enabled. This is not possible with the current System.setProperty > approach. > In general, I question the need for using system properties for > configuration, since it makes embedding a server within a dependency > injection framework more difficult, and is in general less easy to integrate > into generic deployment systems. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2398) Config options should not be only available via system property
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Flavio Junqueira updated ZOOKEEPER-2398: Priority: Minor (was: Major) > Config options should not be only available via system property > --- > > Key: ZOOKEEPER-2398 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2398 > Project: ZooKeeper > Issue Type: Improvement >Reporter: Jason Rosenberg >Priority: Minor > Fix For: 3.6.0, 3.5.3 > > > Some config options (such as enabling readonly mode) are only settable via a > system property. This feels clunky, and makes it less seamless for testing, > or for apps which embed a ZooKeeper inside a java container, etc. > I ran into this issue specifically in the case of creating unit tests to test > read-only mode client side behavior. In this case, I want to run multiple > QuorumPeer's in the same jvm, and have some of them enabled for read-only and > some not enabled. This is not possible with the current System.setProperty > approach. > In general, I question the need for using system properties for > configuration, since it makes embedding a server within a dependency > injection framework more difficult, and is in general less easy to integrate > into generic deployment systems. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2398) Config options should not be only available via system property
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Flavio Junqueira updated ZOOKEEPER-2398: Issue Type: Improvement (was: Bug) > Config options should not be only available via system property > --- > > Key: ZOOKEEPER-2398 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2398 > Project: ZooKeeper > Issue Type: Improvement >Reporter: Jason Rosenberg > > Some config options (such as enabling readonly mode) are only settable via a > system property. This feels clunky, and makes it less seamless for testing, > or for apps which embed a ZooKeeper inside a java container, etc. > I ran into this issue specifically in the case of creating unit tests to test > read-only mode client side behavior. In this case, I want to run multiple > QuorumPeer's in the same jvm, and have some of them enabled for read-only and > some not enabled. This is not possible with the current System.setProperty > approach. > In general, I question the need for using system properties for > configuration, since it makes embedding a server within a dependency > injection framework more difficult, and is in general less easy to integrate > into generic deployment systems. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (ZOOKEEPER-2398) Config options should not be only available via system property
Jason Rosenberg created ZOOKEEPER-2398: -- Summary: Config options should not be only available via system property Key: ZOOKEEPER-2398 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2398 Project: ZooKeeper Issue Type: Bug Reporter: Jason Rosenberg Some config options (such as enabling readonly mode) are only settable via a system property. This feels clunky, and makes it less seamless for testing, or for apps which embed a ZooKeeper inside a java container, etc. I ran into this issue specifically in the case of creating unit tests to test read-only mode client side behavior. In this case, I want to run multiple QuorumPeer's in the same jvm, and have some of them enabled for read-only and some not enabled. This is not possible with the current System.setProperty approach. In general, I question the need for using system properties for configuration, since it makes embedding a server within a dependency injection framework more difficult, and is in general less easy to integrate into generic deployment systems. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2383) Startup race in ZooKeeperServer
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2383?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206310#comment-15206310 ] Jason Rosenberg commented on ZOOKEEPER-2383: Yes, agreed, you wouldn't use a FakeMBeanRegistry for tests that are actually testing the jmx functionality! However, I think it makes sense to have it be something easily configurable/settable for most tests (and especially for tests which launch multiple peers in the same jvm). > Startup race in ZooKeeperServer > --- > > Key: ZOOKEEPER-2383 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2383 > Project: ZooKeeper > Issue Type: Bug > Components: jmx, server >Affects Versions: 3.4.8 >Reporter: Steve Rowe >Priority: Blocker > Fix For: 3.4.9 > > Attachments: TestZkStandaloneJMXRegistrationRaceConcurrent.java, > release-3.4.8-extra-logging.patch, zk-3.4.8-MBeanRegistry.log, > zk-3.4.8-NPE.log > > > In attempting to upgrade Solr's ZooKeeper dependency from 3.4.6 to 3.4.8 > (SOLR-8724) I ran into test failures where attempts to create a node in a > newly started standalone ZooKeeperServer were failing because of an assertion > in MBeanRegistry. > ZooKeeperServer.startup() first sets up its request processor chain then > registers itself in JMX, but if a connection comes in before the server's JMX > registration happens, registration of the connection will fail because it > trips the assertion that (effectively) its parent (the server) has already > registered itself. > {code:java|title=ZooKeeperServer.java} > public synchronized void startup() { > if (sessionTracker == null) { > createSessionTracker(); > } > startSessionTracker(); > setupRequestProcessors(); > registerJMX(); > state = State.RUNNING; > notifyAll(); > } > {code} > {code:java|title=MBeanRegistry.java} > public void register(ZKMBeanInfo bean, ZKMBeanInfo parent) > throws JMException > { > assert bean != null; > String path = null; > if (parent != null) { > path = mapBean2Path.get(parent); > assert path != null; > } > {code} > This problem appears to be new with ZK 3.4.8 - AFAIK Solr never had this > issue with ZK 3.4.6. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
ZooKeeper_branch35_jdk8 - Build # 24 - Still Failing
See https://builds.apache.org/job/ZooKeeper_branch35_jdk8/24/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 383744 lines...] [junit] 2016-03-22 13:00:11,188 [myid:] - INFO [main:SessionTrackerImpl@232] - Shutting down [junit] 2016-03-22 13:00:11,188 [myid:] - INFO [main:PrepRequestProcessor@967] - Shutting down [junit] 2016-03-22 13:00:11,188 [myid:] - INFO [main:SyncRequestProcessor@191] - Shutting down [junit] 2016-03-22 13:00:11,188 [myid:] - INFO [ProcessThread(sid:0 cport:24693)::PrepRequestProcessor@154] - PrepRequestProcessor exited loop! [junit] 2016-03-22 13:00:11,188 [myid:] - INFO [SyncThread:0:SyncRequestProcessor@169] - SyncRequestProcessor exited! [junit] 2016-03-22 13:00:11,188 [myid:] - INFO [main:FinalRequestProcessor@492] - shutdown of request processor complete [junit] 2016-03-22 13:00:11,189 [myid:] - INFO [main:MBeanRegistry@128] - Unregister MBean [org.apache.ZooKeeperService:name0=StandaloneServer_port24693,name1=InMemoryDataTree] [junit] 2016-03-22 13:00:11,189 [myid:] - INFO [main:MBeanRegistry@128] - Unregister MBean [org.apache.ZooKeeperService:name0=StandaloneServer_port24693] [junit] 2016-03-22 13:00:11,190 [myid:] - INFO [main:FourLetterWordMain@85] - connecting to 127.0.0.1 24693 [junit] 2016-03-22 13:00:11,190 [myid:] - INFO [main:JMXEnv@146] - ensureOnly:[] [junit] 2016-03-22 13:00:11,193 [myid:] - INFO [main:ClientBase@562] - fdcount after test is: 49 at start it was 49 [junit] 2016-03-22 13:00:11,193 [myid:] - INFO [main:ZKTestCase$1@65] - SUCCEEDED testWatcherAutoResetWithLocal [junit] 2016-03-22 13:00:11,193 [myid:] - INFO [main:ZKTestCase$1@60] - FINISHED testWatcherAutoResetWithLocal [junit] Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 29.649 sec, Thread: 6, Class: org.apache.zookeeper.test.WatcherTest [junit] 2016-03-22 13:02:50,611 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@82] - Memory used 133635 [junit] 2016-03-22 13:02:50,612 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@87] - Number of threads 55 [junit] 2016-03-22 13:02:50,612 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@102] - FINISHED TEST METHOD testManyChildWatchersAutoReset [junit] 2016-03-22 13:02:50,612 [myid:] - INFO [main:ClientBase@537] - tearDown starting [junit] 2016-03-22 13:02:50,613 [myid:] - INFO [ProcessThread(sid:0 cport:27383)::PrepRequestProcessor@649] - Processed session termination for sessionid: 0x100f7436547 [junit] 2016-03-22 13:02:50,628 [myid:] - INFO [main:ZooKeeper@1110] - Session: 0x100f7436547 closed [junit] 2016-03-22 13:02:50,628 [myid:] - INFO [NIOWorkerThread-29:MBeanRegistry@128] - Unregister MBean [org.apache.ZooKeeperService:name0=StandaloneServer_port27383,name1=Connections,name2=127.0.0.1,name3=0x100f7436547] [junit] 2016-03-22 13:02:50,628 [myid:] - INFO [main-EventThread:ClientCnxn$EventThread@543] - EventThread shut down for session: 0x100f7436547 [junit] 2016-03-22 13:02:50,629 [myid:] - INFO [ProcessThread(sid:0 cport:27383)::PrepRequestProcessor@649] - Processed session termination for sessionid: 0x100f74365470001 [junit] 2016-03-22 13:02:50,631 [myid:] - INFO [NIOWorkerThread-29:NIOServerCnxn@607] - Closed socket connection for client /127.0.0.1:46846 which had sessionid 0x100f7436547 [junit] 2016-03-22 13:02:50,636 [myid:] - INFO [main:ZooKeeper@1110] - Session: 0x100f74365470001 closed [junit] 2016-03-22 13:02:50,636 [myid:] - INFO [NIOWorkerThread-14:MBeanRegistry@128] - Unregister MBean [org.apache.ZooKeeperService:name0=StandaloneServer_port27383,name1=Connections,name2=127.0.0.1,name3=0x100f74365470001] [junit] 2016-03-22 13:02:50,636 [myid:] - INFO [main:ClientBase@507] - STOPPING server [junit] 2016-03-22 13:02:50,636 [myid:] - INFO [main-EventThread:ClientCnxn$EventThread@543] - EventThread shut down for session: 0x100f74365470001 [junit] 2016-03-22 13:02:50,637 [myid:] - INFO [NIOWorkerThread-14:NIOServerCnxn@607] - Closed socket connection for client /127.0.0.1:46847 which had sessionid 0x100f74365470001 [junit] 2016-03-22 13:02:50,638 [myid:] - INFO [ConnnectionExpirer:NIOServerCnxnFactory$ConnectionExpirerThread@583] - ConnnectionExpirerThread interrupted [junit] 2016-03-22 13:02:50,640 [myid:] - INFO [NIOServerCxnFactory.AcceptThread:0.0.0.0/0.0.0.0:27383:NIOServerCnxnFactory$AcceptThread@219] - accept thread exitted run method [junit] 2016-03-22 13:02:50,646 [myid:] - INFO [NIOServerCxnFactory.SelectorThread-1:NIOServerCnxnFactory$SelectorThread@420] - selector thread exitted run method [junit] 2016-03-22 13:02:50,646 [myid:] - INFO [NIOServerCxnFactory.SelectorThread-0:NIOServerCnxnFactory$SelectorThread@420] - selector
ZooKeeper-trunk-jdk8 - Build # 539 - Failure
See https://builds.apache.org/job/ZooKeeper-trunk-jdk8/539/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 383359 lines...] [junit] 2016-03-22 12:50:57,276 [myid:] - INFO [main:JMXEnv@146] - ensureOnly:[] [junit] 2016-03-22 12:50:57,277 [myid:] - INFO [main:ClientBase@460] - STARTING server [junit] 2016-03-22 12:50:57,277 [myid:] - INFO [main:ClientBase@380] - CREATING server instance 127.0.0.1:11222 [junit] 2016-03-22 12:50:57,278 [myid:] - INFO [main:NIOServerCnxnFactory@673] - Configuring NIO connection handler with 10s sessionless connection timeout, 3 selector thread(s), 48 worker threads, and 64 kB direct buffers. [junit] 2016-03-22 12:50:57,278 [myid:] - INFO [main:NIOServerCnxnFactory@686] - binding to port 0.0.0.0/0.0.0.0:11222 [junit] 2016-03-22 12:50:57,279 [myid:] - INFO [main:ClientBase@355] - STARTING server instance 127.0.0.1:11222 [junit] 2016-03-22 12:50:57,279 [myid:] - INFO [main:ZooKeeperServer@858] - minSessionTimeout set to 6000 [junit] 2016-03-22 12:50:57,279 [myid:] - INFO [main:ZooKeeperServer@867] - maxSessionTimeout set to 6 [junit] 2016-03-22 12:50:57,279 [myid:] - INFO [main:ZooKeeperServer@156] - Created server with tickTime 3000 minSessionTimeout 6000 maxSessionTimeout 6 datadir /x1/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-jdk8/trunk/build/test/tmp/test1125868302969782487.junit.dir/version-2 snapdir /x1/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-jdk8/trunk/build/test/tmp/test1125868302969782487.junit.dir/version-2 [junit] 2016-03-22 12:50:57,280 [myid:] - INFO [main:FileSnap@83] - Reading snapshot /x1/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-jdk8/trunk/build/test/tmp/test1125868302969782487.junit.dir/version-2/snapshot.b [junit] 2016-03-22 12:50:57,283 [myid:] - INFO [main:FileTxnSnapLog@298] - Snapshotting: 0xb to /x1/jenkins/jenkins-slave/workspace/ZooKeeper-trunk-jdk8/trunk/build/test/tmp/test1125868302969782487.junit.dir/version-2/snapshot.b [junit] 2016-03-22 12:50:57,286 [myid:] - INFO [main:FourLetterWordMain@85] - connecting to 127.0.0.1 11222 [junit] 2016-03-22 12:50:57,286 [myid:] - INFO [NIOServerCxnFactory.AcceptThread:0.0.0.0/0.0.0.0:11222:NIOServerCnxnFactory$AcceptThread@296] - Accepted socket connection from /127.0.0.1:54864 [junit] 2016-03-22 12:50:57,287 [myid:] - INFO [NIOWorkerThread-1:NIOServerCnxn@485] - Processing stat command from /127.0.0.1:54864 [junit] 2016-03-22 12:50:57,288 [myid:] - INFO [NIOWorkerThread-1:StatCommand@49] - Stat command output [junit] 2016-03-22 12:50:57,288 [myid:] - INFO [NIOWorkerThread-1:NIOServerCnxn@607] - Closed socket connection for client /127.0.0.1:54864 (no session established for client) [junit] 2016-03-22 12:50:57,289 [myid:] - INFO [main:JMXEnv@228] - ensureParent:[InMemoryDataTree, StandaloneServer_port] [junit] 2016-03-22 12:50:57,292 [myid:] - INFO [main:JMXEnv@245] - expect:InMemoryDataTree [junit] 2016-03-22 12:50:57,292 [myid:] - INFO [main:JMXEnv@249] - found:InMemoryDataTree org.apache.ZooKeeperService:name0=StandaloneServer_port11222,name1=InMemoryDataTree [junit] 2016-03-22 12:50:57,293 [myid:] - INFO [main:JMXEnv@245] - expect:StandaloneServer_port [junit] 2016-03-22 12:50:57,293 [myid:] - INFO [main:JMXEnv@249] - found:StandaloneServer_port org.apache.ZooKeeperService:name0=StandaloneServer_port11222 [junit] 2016-03-22 12:50:57,293 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@82] - Memory used 5699 [junit] 2016-03-22 12:50:57,293 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@87] - Number of threads 25 [junit] 2016-03-22 12:50:57,294 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@102] - FINISHED TEST METHOD testQuota [junit] 2016-03-22 12:50:57,294 [myid:] - INFO [main:ClientBase@537] - tearDown starting [junit] 2016-03-22 12:50:57,348 [myid:] - INFO [main:ZooKeeper@1110] - Session: 0x10006440585 closed [junit] 2016-03-22 12:50:57,348 [myid:] - INFO [main:ClientBase@507] - STOPPING server [junit] 2016-03-22 12:50:57,348 [myid:] - INFO [main-EventThread:ClientCnxn$EventThread@543] - EventThread shut down for session: 0x10006440585 [junit] 2016-03-22 12:50:57,348 [myid:] - INFO [ConnnectionExpirer:NIOServerCnxnFactory$ConnectionExpirerThread@583] - ConnnectionExpirerThread interrupted [junit] 2016-03-22 12:50:57,349 [myid:] - INFO [NIOServerCxnFactory.AcceptThread:0.0.0.0/0.0.0.0:11222:NIOServerCnxnFactory$AcceptThread@219] - accept thread exitted run method [junit] 2016-03-22 12:50:57,349 [myid:] - INFO [NIOServerCxnFactory.SelectorThread-2:NIOServerCnxnFactory$SelectorThread@420] - selector thread exitted run method [junit] 2016-03-22 12:50:57,349 [myid:] - INFO
[jira] [Commented] (ZOOKEEPER-2380) Deadlock while shutting down the zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2380?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206226#comment-15206226 ] Arshad Mohammad commented on ZOOKEEPER-2380: bq. -1 core tests. The patch failed core unit tests. No test case failed, one test case is skipped which is not related to this patch > Deadlock while shutting down the zookeeper > -- > > Key: ZOOKEEPER-2380 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2380 > Project: ZooKeeper > Issue Type: Bug > Components: server >Reporter: Arshad Mohammad >Assignee: Arshad Mohammad >Priority: Blocker > Fix For: 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2380-01.patch, ZOOKEEPER-2380-02.patch, > ZOOKEEPER-2380-03.patch > > > Zookeeper enters into deadlock while shutting down itself, thus making > zookeeper service unavailable as deadlocked server is a leader. Here is the > thread dump: > {code} > "QuorumPeer[myid=1](plain=/0:0:0:0:0:0:0:0:2181)(secure=disabled)" #25 prio=5 > os_prio=0 tid=0x7fbc502a6800 nid=0x834 in Object.wait() > [0x7fbc4d9a8000] java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) at > java.lang.Thread.join(Thread.java:1245) - locked < > 0xfeb78000> (a org.apache.zookeeper.server.SyncRequestProcessor) > at java.lang.Thread.join(Thread.java:1319) at > org.apache.zookeeper.server.SyncRequestProcessor.shutdown(SyncRequestProcessor.java:196) > at > org.apache.zookeeper.server.quorum.ProposalRequestProcessor.shutdown(ProposalRequestProcessor.java:90) > at > org.apache.zookeeper.server.PrepRequestProcessor.shutdown(PrepRequestProcessor.java:1016) > at > org.apache.zookeeper.server.quorum.LeaderRequestProcessor.shutdown(LeaderRequestProcessor.java:78) > at > org.apache.zookeeper.server.ZooKeeperServer.shutdown(ZooKeeperServer.java:561) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.QuorumZooKeeperServer.shutdown(QuorumZooKeeperServer.java:169) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer.shutdown(LeaderZooKeeperServer.java:102) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.Leader.shutdown(Leader.java:637) at > org.apache.zookeeper.server.quorum.Leader.lead(Leader.java:590) - locked > < > 0xfeb781a0> (a org.apache.zookeeper.server.quorum.Leader) at > org.apache.zookeeper.server.quorum.QuorumPeer.run(QuorumPeer.java:1108) > "SyncThread:1" #46 prio=5 os_prio=0 tid=0x7fbc5848f000 nid=0x867 waiting > for monitor entry [0x7fbc4ca9] java.lang.Thread.State: BLOCKED > (on object monitor) at > org.apache.zookeeper.server.quorum.Leader.processAck(Leader.java:784) - > waiting to lock <0xfeb781a0> (a > org.apache.zookeeper.server.quorum.Leader) at > org.apache.zookeeper.server.quorum.AckRequestProcessor.processRequest(AckRequestProcessor.java:46) > at > org.apache.zookeeper.server.SyncRequestProcessor.flush(SyncRequestProcessor.java:183) > at > org.apache.zookeeper.server.SyncRequestProcessor.run(SyncRequestProcessor.java:113) > {code} > Leader.lead() calls shutdown() from the synchronized block, it acquired lock > on Leader.java instance > {code} > while (true) { > synchronized (this) { > long start = Time.currentElapsedTime(); > . > {code} > In the shutdown flow SyncThread is trying to acquire lock on the same > Leader.java instance. > Leader thread acquired lock and waiting for SyncThread shutdown. SyncThread > waiting for the lock to complete its shutdown. This is how ZooKeeper entered > into deadlock -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2380) Deadlock while shutting down the zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2380?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206199#comment-15206199 ] Hadoop QA commented on ZOOKEEPER-2380: -- -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12794739/ZOOKEEPER-2380-03.patch against trunk revision 1736090. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 5 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 2.0.3) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. -1 core tests. The patch failed core unit tests. +1 contrib tests. The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3114//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3114//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3114//console This message is automatically generated. > Deadlock while shutting down the zookeeper > -- > > Key: ZOOKEEPER-2380 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2380 > Project: ZooKeeper > Issue Type: Bug > Components: server >Reporter: Arshad Mohammad >Assignee: Arshad Mohammad >Priority: Blocker > Fix For: 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2380-01.patch, ZOOKEEPER-2380-02.patch, > ZOOKEEPER-2380-03.patch > > > Zookeeper enters into deadlock while shutting down itself, thus making > zookeeper service unavailable as deadlocked server is a leader. Here is the > thread dump: > {code} > "QuorumPeer[myid=1](plain=/0:0:0:0:0:0:0:0:2181)(secure=disabled)" #25 prio=5 > os_prio=0 tid=0x7fbc502a6800 nid=0x834 in Object.wait() > [0x7fbc4d9a8000] java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) at > java.lang.Thread.join(Thread.java:1245) - locked < > 0xfeb78000> (a org.apache.zookeeper.server.SyncRequestProcessor) > at java.lang.Thread.join(Thread.java:1319) at > org.apache.zookeeper.server.SyncRequestProcessor.shutdown(SyncRequestProcessor.java:196) > at > org.apache.zookeeper.server.quorum.ProposalRequestProcessor.shutdown(ProposalRequestProcessor.java:90) > at > org.apache.zookeeper.server.PrepRequestProcessor.shutdown(PrepRequestProcessor.java:1016) > at > org.apache.zookeeper.server.quorum.LeaderRequestProcessor.shutdown(LeaderRequestProcessor.java:78) > at > org.apache.zookeeper.server.ZooKeeperServer.shutdown(ZooKeeperServer.java:561) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.QuorumZooKeeperServer.shutdown(QuorumZooKeeperServer.java:169) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer.shutdown(LeaderZooKeeperServer.java:102) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.Leader.shutdown(Leader.java:637) at > org.apache.zookeeper.server.quorum.Leader.lead(Leader.java:590) - locked > < > 0xfeb781a0> (a org.apache.zookeeper.server.quorum.Leader) at > org.apache.zookeeper.server.quorum.QuorumPeer.run(QuorumPeer.java:1108) > "SyncThread:1" #46 prio=5 os_prio=0 tid=0x7fbc5848f000 nid=0x867 waiting > for monitor entry [0x7fbc4ca9] java.lang.Thread.State: BLOCKED > (on object monitor) at > org.apache.zookeeper.server.quorum.Leader.processAck(Leader.java:784) - > waiting to lock <0xfeb781a0> (a > org.apache.zookeeper.server.quorum.Leader) at > org.apache.zookeeper.server.quorum.AckRequestProcessor.processRequest(AckRequestProcessor.java:46) > at > org.apache.zookeeper.server.SyncRequestProcessor.flush(SyncRequestProcessor.java:183) > at > org.apache.zookeeper.server.SyncRequestProcessor.run(SyncRequestProcessor.java:113) > {code} > Leader.lead() calls shutdown() from the synchronized block, it acquired lock > on Leader.java instance > {code} > while (true) { > synchronized (this) { > long start = Time.currentElapsedTime(); > . > {code} > In the shutdown flow SyncThread is trying to
Failed: ZOOKEEPER-2380 PreCommit Build #3114
Jira: https://issues.apache.org/jira/browse/ZOOKEEPER-2380 Build: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3114/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 377193 lines...] [exec] +1 @author. The patch does not contain any @author tags. [exec] [exec] +1 tests included. The patch appears to include 5 new or modified tests. [exec] [exec] +1 javadoc. The javadoc tool did not generate any warning messages. [exec] [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings. [exec] [exec] +1 findbugs. The patch does not introduce any new Findbugs (version 2.0.3) warnings. [exec] [exec] +1 release audit. The applied patch does not increase the total number of release audit warnings. [exec] [exec] -1 core tests. The patch failed core unit tests. [exec] [exec] +1 contrib tests. The patch passed contrib unit tests. [exec] [exec] Test results: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3114//testReport/ [exec] Findbugs warnings: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3114//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html [exec] Console output: https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/3114//console [exec] [exec] This message is automatically generated. [exec] [exec] [exec] == [exec] == [exec] Adding comment to Jira. [exec] == [exec] == [exec] [exec] [exec] Comment added. [exec] 18230d31966b2853907a6a61a40ce2e9494ad9f8 logged out [exec] [exec] [exec] == [exec] == [exec] Finished build. [exec] == [exec] == [exec] [exec] BUILD FAILED /home/jenkins/jenkins-slave/workspace/PreCommit-ZOOKEEPER-Build/trunk/build.xml:1605: exec returned: 1 Total time: 17 minutes 23 seconds Build step 'Execute shell' marked build as failure Archiving artifacts Setting LATEST1_7_HOME=/home/jenkins/jenkins-slave/tools/hudson.model.JDK/latest1.7 Recording test results Setting LATEST1_7_HOME=/home/jenkins/jenkins-slave/tools/hudson.model.JDK/latest1.7 Setting LATEST1_7_HOME=/home/jenkins/jenkins-slave/tools/hudson.model.JDK/latest1.7 [description-setter] Description set: ZOOKEEPER-2380 Email was triggered for: Failure - Any Sending email for trigger: Failure - Any Setting LATEST1_7_HOME=/home/jenkins/jenkins-slave/tools/hudson.model.JDK/latest1.7 Setting LATEST1_7_HOME=/home/jenkins/jenkins-slave/tools/hudson.model.JDK/latest1.7 Setting LATEST1_7_HOME=/home/jenkins/jenkins-slave/tools/hudson.model.JDK/latest1.7 Setting LATEST1_7_HOME=/home/jenkins/jenkins-slave/tools/hudson.model.JDK/latest1.7 ### ## FAILED TESTS (if any) ## All tests passed
[jira] [Updated] (ZOOKEEPER-2380) Deadlock while shutting down the zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2380?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Arshad Mohammad updated ZOOKEEPER-2380: --- Attachment: ZOOKEEPER-2380-03.patch Submitting patch with test case > Deadlock while shutting down the zookeeper > -- > > Key: ZOOKEEPER-2380 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2380 > Project: ZooKeeper > Issue Type: Bug > Components: server >Reporter: Arshad Mohammad >Assignee: Arshad Mohammad >Priority: Blocker > Fix For: 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2380-01.patch, ZOOKEEPER-2380-02.patch, > ZOOKEEPER-2380-03.patch > > > Zookeeper enters into deadlock while shutting down itself, thus making > zookeeper service unavailable as deadlocked server is a leader. Here is the > thread dump: > {code} > "QuorumPeer[myid=1](plain=/0:0:0:0:0:0:0:0:2181)(secure=disabled)" #25 prio=5 > os_prio=0 tid=0x7fbc502a6800 nid=0x834 in Object.wait() > [0x7fbc4d9a8000] java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) at > java.lang.Thread.join(Thread.java:1245) - locked < > 0xfeb78000> (a org.apache.zookeeper.server.SyncRequestProcessor) > at java.lang.Thread.join(Thread.java:1319) at > org.apache.zookeeper.server.SyncRequestProcessor.shutdown(SyncRequestProcessor.java:196) > at > org.apache.zookeeper.server.quorum.ProposalRequestProcessor.shutdown(ProposalRequestProcessor.java:90) > at > org.apache.zookeeper.server.PrepRequestProcessor.shutdown(PrepRequestProcessor.java:1016) > at > org.apache.zookeeper.server.quorum.LeaderRequestProcessor.shutdown(LeaderRequestProcessor.java:78) > at > org.apache.zookeeper.server.ZooKeeperServer.shutdown(ZooKeeperServer.java:561) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.QuorumZooKeeperServer.shutdown(QuorumZooKeeperServer.java:169) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer.shutdown(LeaderZooKeeperServer.java:102) > - locked < > 0xfeb61e20> (a > org.apache.zookeeper.server.quorum.LeaderZooKeeperServer) at > org.apache.zookeeper.server.quorum.Leader.shutdown(Leader.java:637) at > org.apache.zookeeper.server.quorum.Leader.lead(Leader.java:590) - locked > < > 0xfeb781a0> (a org.apache.zookeeper.server.quorum.Leader) at > org.apache.zookeeper.server.quorum.QuorumPeer.run(QuorumPeer.java:1108) > "SyncThread:1" #46 prio=5 os_prio=0 tid=0x7fbc5848f000 nid=0x867 waiting > for monitor entry [0x7fbc4ca9] java.lang.Thread.State: BLOCKED > (on object monitor) at > org.apache.zookeeper.server.quorum.Leader.processAck(Leader.java:784) - > waiting to lock <0xfeb781a0> (a > org.apache.zookeeper.server.quorum.Leader) at > org.apache.zookeeper.server.quorum.AckRequestProcessor.processRequest(AckRequestProcessor.java:46) > at > org.apache.zookeeper.server.SyncRequestProcessor.flush(SyncRequestProcessor.java:183) > at > org.apache.zookeeper.server.SyncRequestProcessor.run(SyncRequestProcessor.java:113) > {code} > Leader.lead() calls shutdown() from the synchronized block, it acquired lock > on Leader.java instance > {code} > while (true) { > synchronized (this) { > long start = Time.currentElapsedTime(); > . > {code} > In the shutdown flow SyncThread is trying to acquire lock on the same > Leader.java instance. > Leader thread acquired lock and waiting for SyncThread shutdown. SyncThread > waiting for the lock to complete its shutdown. This is how ZooKeeper entered > into deadlock -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2383) Startup race in ZooKeeperServer
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2383?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206169#comment-15206169 ] Rakesh R commented on ZOOKEEPER-2383: - Thanks [~jbrosenb...@gmail.com]. Disbaling or mocking may affect the {{org.apache.zookeeper.testJMXEnv#ensureAll(expectednames)}} verification, isn't it?. In unit tests, it verifies all the registered jmx beans to ensure that the server is started fully. [~fpj], I have one idea to fix this issue by modifying the condition {{zkServer == null}} with {{zkServer.isRunning()}} status check. After seeing the code changes, I feel to push this logic carefully after 3.5.2 release, which is waiting to be released soon. Also, I think needs to identify and add more unit test cases covering server startup/shutdown/restart corner cases in order to push this change. Now, I'm planning to revert ZOOKEEPER-2026 committed changes and re-open the jira. Does this makes sense to you? > Startup race in ZooKeeperServer > --- > > Key: ZOOKEEPER-2383 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2383 > Project: ZooKeeper > Issue Type: Bug > Components: jmx, server >Affects Versions: 3.4.8 >Reporter: Steve Rowe >Priority: Blocker > Fix For: 3.4.9 > > Attachments: TestZkStandaloneJMXRegistrationRaceConcurrent.java, > release-3.4.8-extra-logging.patch, zk-3.4.8-MBeanRegistry.log, > zk-3.4.8-NPE.log > > > In attempting to upgrade Solr's ZooKeeper dependency from 3.4.6 to 3.4.8 > (SOLR-8724) I ran into test failures where attempts to create a node in a > newly started standalone ZooKeeperServer were failing because of an assertion > in MBeanRegistry. > ZooKeeperServer.startup() first sets up its request processor chain then > registers itself in JMX, but if a connection comes in before the server's JMX > registration happens, registration of the connection will fail because it > trips the assertion that (effectively) its parent (the server) has already > registered itself. > {code:java|title=ZooKeeperServer.java} > public synchronized void startup() { > if (sessionTracker == null) { > createSessionTracker(); > } > startSessionTracker(); > setupRequestProcessors(); > registerJMX(); > state = State.RUNNING; > notifyAll(); > } > {code} > {code:java|title=MBeanRegistry.java} > public void register(ZKMBeanInfo bean, ZKMBeanInfo parent) > throws JMException > { > assert bean != null; > String path = null; > if (parent != null) { > path = mapBean2Path.get(parent); > assert path != null; > } > {code} > This problem appears to be new with ZK 3.4.8 - AFAIK Solr never had this > issue with ZK 3.4.6. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-1378) Provide option to turn off sending of diffs
[ https://issues.apache.org/jira/browse/ZOOKEEPER-1378?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206126#comment-15206126 ] Flavio Junqueira commented on ZOOKEEPER-1378: - [~phunt] [~te...@apache.org] is this still an issue? > Provide option to turn off sending of diffs > --- > > Key: ZOOKEEPER-1378 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1378 > Project: ZooKeeper > Issue Type: Task >Reporter: Ted Yu > Fix For: 3.5.2, 3.6.0 > > > From Patrick: > we need to have an option to turn off sending of diffs. There are a couple of > really strong reasons I can think of to do this: > 1) 3.3.x is broken in a similar way, there is an upgrade problem we can't > solve short of having ppl first upgrade to a fixed 3.3 (3.3.5 say) and then > upgrading to 3.4.x. If we could turn off diff sending this would address the > problem. > 2) safety valve. Say we find another new problem with diff sending in > 3.4/3/5. Having an option to turn it off would be useful for people as a > workaround until a fix is found and released. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (ZOOKEEPER-2159) Pluggable SASL Authentication
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2159?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Flavio Junqueira updated ZOOKEEPER-2159: Priority: Blocker (was: Major) > Pluggable SASL Authentication > - > > Key: ZOOKEEPER-2159 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2159 > Project: ZooKeeper > Issue Type: Improvement > Components: java client, server >Reporter: Yuliya Feldman >Assignee: Yuliya Feldman >Priority: Blocker > Fix For: 3.5.2, 3.6.0 > > Attachments: PluggableZookeeperAuthentication (1).pdf, > PluggableZookeeperAuthentication.pdf > > > Today SASLAuthenticationProvider is used for all SASL based authentications > which creates some "if/else" statements in ZookeeperSaslClient and > ZookeeperSaslServer code with just Kerberos and Digest. > We want to use yet another different SASL based authentication and adding one > more "if/else" with some code specific just to that new way does not make > much sense. > Proposal is to allow to plug custom SASL Authentication mechanism(s) without > further changes in Zookeeper code. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2365) JAAS configuration section error is confusing
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206100#comment-15206100 ] Flavio Junqueira commented on ZOOKEEPER-2365: - [~danfitch] We appreciate you taking your time to review and help, thanks! > JAAS configuration section error is confusing > - > > Key: ZOOKEEPER-2365 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2365 > Project: ZooKeeper > Issue Type: Bug > Components: java client >Affects Versions: 3.4.6 > Environment: Ubuntu x86_64 openjdk-7-jre >Reporter: Dan Fitch >Assignee: Biju Nair >Priority: Trivial > Fix For: 3.4.9, 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2365.patch > > > I have zookeeper running normally just fine in a 3-server cluster. > Then I try to configure zookeeper to use Kerberos, following docs in the Solr > wiki here: > https://cwiki.apache.org/confluence/display/solr/Kerberos+Authentication+Plugin > I can't even get to the fun Kerberos errors. When I start with > {{JVMFLAGS="-Djava.security.auth.login.config=/opt/zookeeper/jaas-server.conf"}} > and this jaas-server.conf: > {code} > Server { > com.sun.security.auth.module.Krb5LoginModule required > useKeyTab=true > keyTab=/keytabs/vdev-solr-01.keytab > storeKey=true > doNotPrompt=true > useTicketCache=false > debug=true > principal="HTTP/"; > } > {code} > I get this in the log: > {code} > 2016-02-10 16:16:51,327 [myid:1] - ERROR [main:ServerCnxnFactory@195] - No > JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > 2016-02-10 16:16:51,328 [myid:1] - ERROR [main:QuorumPeerMain@89] - > Unexpected exception, exiting abnormally > java.io.IOException: No JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > at > org.apache.zookeeper.server.ServerCnxnFactory.configureSaslLogin(ServerCnxnFactory.java:196) > at > org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:87) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:130) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78) > {code} > (Note the "foundin" typo.) > I get the exact same error if the jaas-server.conf file exists, or does not. > So later I found that the Solr wiki was wrong and lost the double quotes > around the keytab value. It would be nice if Zookeeper spewed a more useful > message when it can't parse the configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2365) JAAS configuration section error is confusing
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206093#comment-15206093 ] Flavio Junqueira commented on ZOOKEEPER-2365: - Also, please have a look at ZOOKEEPER-2345. It is pretty much the same issue, but has more information. > JAAS configuration section error is confusing > - > > Key: ZOOKEEPER-2365 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2365 > Project: ZooKeeper > Issue Type: Bug > Components: java client >Affects Versions: 3.4.6 > Environment: Ubuntu x86_64 openjdk-7-jre >Reporter: Dan Fitch >Assignee: Biju Nair >Priority: Trivial > Fix For: 3.4.9, 3.5.2, 3.6.0 > > Attachments: ZOOKEEPER-2365.patch > > > I have zookeeper running normally just fine in a 3-server cluster. > Then I try to configure zookeeper to use Kerberos, following docs in the Solr > wiki here: > https://cwiki.apache.org/confluence/display/solr/Kerberos+Authentication+Plugin > I can't even get to the fun Kerberos errors. When I start with > {{JVMFLAGS="-Djava.security.auth.login.config=/opt/zookeeper/jaas-server.conf"}} > and this jaas-server.conf: > {code} > Server { > com.sun.security.auth.module.Krb5LoginModule required > useKeyTab=true > keyTab=/keytabs/vdev-solr-01.keytab > storeKey=true > doNotPrompt=true > useTicketCache=false > debug=true > principal="HTTP/"; > } > {code} > I get this in the log: > {code} > 2016-02-10 16:16:51,327 [myid:1] - ERROR [main:ServerCnxnFactory@195] - No > JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > 2016-02-10 16:16:51,328 [myid:1] - ERROR [main:QuorumPeerMain@89] - > Unexpected exception, exiting abnormally > java.io.IOException: No JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > at > org.apache.zookeeper.server.ServerCnxnFactory.configureSaslLogin(ServerCnxnFactory.java:196) > at > org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:87) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:130) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78) > {code} > (Note the "foundin" typo.) > I get the exact same error if the jaas-server.conf file exists, or does not. > So later I found that the Solr wiki was wrong and lost the double quotes > around the keytab value. It would be nice if Zookeeper spewed a more useful > message when it can't parse the configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ZOOKEEPER-2365) JAAS configuration section error is confusing
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15206082#comment-15206082 ] Flavio Junqueira commented on ZOOKEEPER-2365: - The last point [~danfitch] raised ins the most important for me, why are you not propagating the message in the original {{SecurityException}}? I suspect that the reason we throw an IOException is that we have tried to make it common practice to propagate up IOException when there is any issues that involves IO (e.g., accessing a file), but it doesn't mean we should be swallowing the original error message. [~gsbiju] could you please produce a new patch to address the comments? > JAAS configuration section error is confusing > - > > Key: ZOOKEEPER-2365 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2365 > Project: ZooKeeper > Issue Type: Bug > Components: java client >Affects Versions: 3.4.6 > Environment: Ubuntu x86_64 openjdk-7-jre >Reporter: Dan Fitch >Assignee: Biju Nair >Priority: Trivial > Attachments: ZOOKEEPER-2365.patch > > > I have zookeeper running normally just fine in a 3-server cluster. > Then I try to configure zookeeper to use Kerberos, following docs in the Solr > wiki here: > https://cwiki.apache.org/confluence/display/solr/Kerberos+Authentication+Plugin > I can't even get to the fun Kerberos errors. When I start with > {{JVMFLAGS="-Djava.security.auth.login.config=/opt/zookeeper/jaas-server.conf"}} > and this jaas-server.conf: > {code} > Server { > com.sun.security.auth.module.Krb5LoginModule required > useKeyTab=true > keyTab=/keytabs/vdev-solr-01.keytab > storeKey=true > doNotPrompt=true > useTicketCache=false > debug=true > principal="HTTP/"; > } > {code} > I get this in the log: > {code} > 2016-02-10 16:16:51,327 [myid:1] - ERROR [main:ServerCnxnFactory@195] - No > JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > 2016-02-10 16:16:51,328 [myid:1] - ERROR [main:QuorumPeerMain@89] - > Unexpected exception, exiting abnormally > java.io.IOException: No JAAS configuration section named 'Server' was foundin > '/opt/zookeeper/jaas-server.conf'. > at > org.apache.zookeeper.server.ServerCnxnFactory.configureSaslLogin(ServerCnxnFactory.java:196) > at > org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:87) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:130) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111) > at > org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78) > {code} > (Note the "foundin" typo.) > I get the exact same error if the jaas-server.conf file exists, or does not. > So later I found that the Solr wiki was wrong and lost the double quotes > around the keytab value. It would be nice if Zookeeper spewed a more useful > message when it can't parse the configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
ZooKeeper-trunk-solaris - Build # 1098 - Still Failing
See https://builds.apache.org/job/ZooKeeper-trunk-solaris/1098/ ### ## LAST 60 LINES OF THE CONSOLE ### [...truncated 349747 lines...] [junit] 2016-03-22 08:14:02,018 [myid:] - INFO [main:JMXEnv@146] - ensureOnly:[] [junit] 2016-03-22 08:14:02,019 [myid:] - INFO [main:ClientBase@460] - STARTING server [junit] 2016-03-22 08:14:02,019 [myid:] - INFO [main:ClientBase@380] - CREATING server instance 127.0.0.1:11222 [junit] 2016-03-22 08:14:02,019 [myid:] - INFO [main:NIOServerCnxnFactory@673] - Configuring NIO connection handler with 10s sessionless connection timeout, 2 selector thread(s), 16 worker threads, and 64 kB direct buffers. [junit] 2016-03-22 08:14:02,020 [myid:] - INFO [main:NIOServerCnxnFactory@686] - binding to port 0.0.0.0/0.0.0.0:11222 [junit] 2016-03-22 08:14:02,021 [myid:] - INFO [main:ClientBase@355] - STARTING server instance 127.0.0.1:11222 [junit] 2016-03-22 08:14:02,021 [myid:] - INFO [main:ZooKeeperServer@858] - minSessionTimeout set to 6000 [junit] 2016-03-22 08:14:02,021 [myid:] - INFO [main:ZooKeeperServer@867] - maxSessionTimeout set to 6 [junit] 2016-03-22 08:14:02,022 [myid:] - INFO [main:ZooKeeperServer@156] - Created server with tickTime 3000 minSessionTimeout 6000 maxSessionTimeout 6 datadir /zonestorage/hudson_solaris/home/hudson/hudson-slave/workspace/ZooKeeper-trunk-solaris/trunk/build/test/tmp/test3115375931271272945.junit.dir/version-2 snapdir /zonestorage/hudson_solaris/home/hudson/hudson-slave/workspace/ZooKeeper-trunk-solaris/trunk/build/test/tmp/test3115375931271272945.junit.dir/version-2 [junit] 2016-03-22 08:14:02,022 [myid:] - INFO [main:FileSnap@83] - Reading snapshot /zonestorage/hudson_solaris/home/hudson/hudson-slave/workspace/ZooKeeper-trunk-solaris/trunk/build/test/tmp/test3115375931271272945.junit.dir/version-2/snapshot.b [junit] 2016-03-22 08:14:02,024 [myid:] - INFO [main:FileTxnSnapLog@298] - Snapshotting: 0xb to /zonestorage/hudson_solaris/home/hudson/hudson-slave/workspace/ZooKeeper-trunk-solaris/trunk/build/test/tmp/test3115375931271272945.junit.dir/version-2/snapshot.b [junit] 2016-03-22 08:14:02,026 [myid:] - INFO [main:FourLetterWordMain@85] - connecting to 127.0.0.1 11222 [junit] 2016-03-22 08:14:02,026 [myid:] - INFO [NIOServerCxnFactory.AcceptThread:0.0.0.0/0.0.0.0:11222:NIOServerCnxnFactory$AcceptThread@296] - Accepted socket connection from /127.0.0.1:51009 [junit] 2016-03-22 08:14:02,027 [myid:] - INFO [NIOWorkerThread-1:NIOServerCnxn@485] - Processing stat command from /127.0.0.1:51009 [junit] 2016-03-22 08:14:02,027 [myid:] - INFO [NIOWorkerThread-1:StatCommand@49] - Stat command output [junit] 2016-03-22 08:14:02,028 [myid:] - INFO [NIOWorkerThread-1:NIOServerCnxn@607] - Closed socket connection for client /127.0.0.1:51009 (no session established for client) [junit] 2016-03-22 08:14:02,028 [myid:] - INFO [main:JMXEnv@228] - ensureParent:[InMemoryDataTree, StandaloneServer_port] [junit] 2016-03-22 08:14:02,029 [myid:] - INFO [main:JMXEnv@245] - expect:InMemoryDataTree [junit] 2016-03-22 08:14:02,029 [myid:] - INFO [main:JMXEnv@249] - found:InMemoryDataTree org.apache.ZooKeeperService:name0=StandaloneServer_port11222,name1=InMemoryDataTree [junit] 2016-03-22 08:14:02,030 [myid:] - INFO [main:JMXEnv@245] - expect:StandaloneServer_port [junit] 2016-03-22 08:14:02,030 [myid:] - INFO [main:JMXEnv@249] - found:StandaloneServer_port org.apache.ZooKeeperService:name0=StandaloneServer_port11222 [junit] 2016-03-22 08:14:02,030 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@82] - Memory used 17634 [junit] 2016-03-22 08:14:02,030 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@87] - Number of threads 24 [junit] 2016-03-22 08:14:02,030 [myid:] - INFO [main:JUnit4ZKTestRunner$LoggedInvokeMethod@102] - FINISHED TEST METHOD testQuota [junit] 2016-03-22 08:14:02,030 [myid:] - INFO [main:ClientBase@537] - tearDown starting [junit] 2016-03-22 08:14:02,102 [myid:] - INFO [main:ZooKeeper@1110] - Session: 0x1201a617afe closed [junit] 2016-03-22 08:14:02,102 [myid:] - INFO [main:ClientBase@507] - STOPPING server [junit] 2016-03-22 08:14:02,102 [myid:] - INFO [main-EventThread:ClientCnxn$EventThread@543] - EventThread shut down for session: 0x1201a617afe [junit] 2016-03-22 08:14:02,103 [myid:] - INFO [NIOServerCxnFactory.SelectorThread-0:NIOServerCnxnFactory$SelectorThread@420] - selector thread exitted run method [junit] 2016-03-22 08:14:02,103 [myid:] - INFO [NIOServerCxnFactory.AcceptThread:0.0.0.0/0.0.0.0:11222:NIOServerCnxnFactory$AcceptThread@219] - accept thread exitted run method [junit] 2016-03-22 08:14:02,103 [myid:] - INFO
Re: ZOOKEEPER-2024 and release planning
> Insight from the creators/reviewers is probably the most critical > signal. e.g. how much risk is there, how well is it tested, is the > value vs the risk worth it. Patrick, as I mentioned previously, this patch went through many rounds of review (reviewboard has 26 versions). We ended up with a simple algorithm, very localized in terms of code changes and much simpler than the code currently in place, and one for which we can reason about correctness (in the Jira). Besides new unit tests, Kfir had done extensive system testing, and actually improved ZK's system test suit for that purpose. Results attached to the Jira show that there is 10x-20x throughput improvement. Kfir did an excellent job - I haven't seen many patches recently with similar level of testing. Here are two scenarios for which the improvements especially matter: 1. Deployment using observers. The observers run commit processor too, so they block all their pipeline for every write, of course this stalls all operations coming from their DC to the ZK. 2. Any two applications with different workload trying to use the same ZooKeeper. This patch brings us much closer to client isolation (if you're worried about security, you should be worried about isolation) I think the fact that both Twitter and Facebook have an internal version of this patch speaks for itself. I totally understand Chris's prioritization. I'd like to commit it to trunk for now, and then you guys can decide which release to add this in. I understand much less blanket stability concerns that are stated (in other threads about this) without reviewing the work or evaluating its benefits. While we try to encourage more contribution to ZK, such approach makes people trying to contribute feel like their work is being put in the drawer without due consideration. Alex On Mon, Mar 21, 2016 at 9:54 PM, Patrick Huntwrote: > fwiw, my 0.02. > > The other comments on this thread, while not all aligned, make sense > to me. I don't see anything I outright disagree with. > > Based on feedback we got during the recent meetup and others > anecdotally (e.g. Raul's and other insights) it sounded like a number > of community members are already using 3.5 for "production" workloads. > They seemed relatively happy with the current stability levels. > > My concern with pulling in non-critical changes at this point, > regardless the source, is the risk/reward in 3.5 vs postponing to 3.6. > We don't have a huge amount of testing that we do within the > development community that will catch regressions. Just because we > don't ship something in 3.5 doesn't mean it's not available, it's just > not available in the release. > > So then it becomes a question of delaying the features/improvements > already in 3.5 vs "just one more". I could see it go either way. > Insight from the creators/reviewers is probably the most critical > signal. e.g. how much risk is there, how well is it tested, is the > value vs the risk worth it. > > Patrick > > On Mon, Mar 21, 2016 at 2:11 PM, Chris Nauroth > wrote: > > I've had a chance to do a cursory first review of ZOOKEEPER-2024 (major > throughput improvement with mixed workloads). Big thanks to Kfir for > authoring the patch and Alex for championing it. It's very interesting. > > > > At this point, as release manager for 3.5.2-alpha, I am leaning towards > not including it in this release. This is not so much a statement on this > patch itself as it is an acknowledgment of competing priorities. We still > have a fair number of blocker bugs targeted to 3.5.2-alpha. I expect we're > all going to need to focus on those blockers now in order to get a release > ready in the next several weeks. > > > > I think the feature is very compelling though. I would like us to > seriously consider including it before 3.5 GA. I don't see any > compatibility concerns in the patch, so that should make it easy to include > the patch later. > > > > Somewhat related to that, I'd like to see if we can move faster on a > 3.5.3 release after 3.5.2. Recent mailing list discussions indicate that > the community would like to see a quicker release cadence. Perhaps 3.5.3 > can focus on ZOOKEEPER-2024, API stability, and a handful of further > blockers. > > > > --Chris Nauroth >