Actually, it seems related but not quite the same issue, it refers to JMX 
registration, which is what ZK-2026 was about. I need to have a more careful 
look into ZK-2383.

-Flavio
 
> On 17 Sep 2016, at 02:59, Rakesh Radhakrishnan <rake...@apache.org> wrote:
> 
> Thanks for the analysis and discussions.
> 
> There is already jira raised to address this case, ZOOKEEPER-2383. Its in
> patch available state now and waiting for more reviews & +1 votes to push
> it upstream.
> Appreciate help in resolving this and include this in 3.4.10 version.
> 
> Rakesh
> 
> On Sat, Sep 17, 2016 at 3:36 AM, Flavio Junqueira <f...@apache.org> wrote:
> 
>> I've been able to repro this. There is a race in
>> NIOServerCnxnFactory.startup. We start the cnxn factory before we call
>> startup on the zookeeper server. If we call createSession from the cnxn
>> factory before we start the server, then we get the NPE. An easy way to
>> repro is to add a sleep here:
>> 
>> @Override
>>    public void startup(ZooKeeperServer zks) throws IOException,
>>            InterruptedException {
>>        start();
>>        setZooKeeperServer(zks);
>>        zks.startdata();
>>        Thread.sleep(3000);
>>        zks.startup();
>>    }
>> 
>> Afaict, this does't cause any problem on the server, and the client will
>> simply try again. It is ugly, though, we should fix it for the next release.
>> 
>> I believe the issue that introduced it is ZOOKEEPER-2026.
>> 
>> -Flavio
>> 
>> 
>>> On 16 Sep 2016, at 20:02, Flavio Junqueira <f...@apache.org> wrote:
>>> 
>>> Thanks for reporting this issue. Could you create a jira for this,
>> please?
>>> 
>>> Also, small observation, but I think you meant to say 3.4.9 in the
>> subject.
>>> 
>>> -Flavio
>>> 
>>>> On 16 Sep 2016, at 05:38, Colin Dupee <cdu...@3dmd.com> wrote:
>>>> 
>>>> It appears sessionTracker was intended to have a value of null, but
>> simply has no value assigned (@109).  This results in a failure to compare
>> to null in startup (@415), and an object never being created.  While the
>> server seems to be at least partially functional, it does produce an NPE on
>> startup:
>>>> 2016-09-16 00:12:31,285 [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181]
>> WARN  org.apache.zookeeper.server.NIOServerCnxnFactory  - Ignoring
>> unexpected runtime exception
>>>> java.lang.NullPointerException
>>>>               at org.apache.zookeeper.server.
>> ZooKeeperServer.createSession(ZooKeeperServer.java:597)
>>>>               at org.apache.zookeeper.server.ZooKeeperServer.
>> processConnectRequest(ZooKeeperServer.java:930)
>>>>               at org.apache.zookeeper.server.NIOServerCnxn.
>> readConnectRequest(NIOServerCnxn.java:418)
>>>>               at org.apache.zookeeper.server.
>> NIOServerCnxn.readPayload(NIOServerCnxn.java:198)
>>>>               at org.apache.zookeeper.server.NIOServerCnxn.doIO(
>> NIOServerCnxn.java:244)
>>>>               at org.apache.zookeeper.server.NIOServerCnxnFactory.run(
>> NIOServerCnxnFactory.java:203)
>>>>               at java.lang.Thread.run(Thread.java:745)
>>>> 
>>>> Colin DUPÉE
>>>> Computer Scientist
>>>> 3dMD LLC
>>>> 
>>>> +1 770.612.8002, ext. 22 (Atlanta Office)
>>>> cdu...@3dmd.com <mailto:cdu...@3dmd.com>
>>>> 3dMD.com <http://www.3dmd.com/>
>>>> 
>>>> Follow 3dMD on: linkedin.com/company/3dmd <http://www.linkedin.com/
>> company/3dmd>
>>>> Find 3dMD on: facebook.com/3dMDcommunity <https://www.facebook.com/
>> 3dMDcommunity>
>>>> Follow 3dMD on: twitter.com/3dMD <https://twitter.com/3dMD>
>>>> 
>>>> Confidentiality Notice: This e-mail transmission, including any
>> attachments, contains confidential information and is protected by law as a
>> legally privileged document and copyright work. Its content is for the sole
>> use of the intended recipient(s) and should not be disclosed, given or
>> copied to anyone other than the person(s) named or referenced above. Any
>> unauthorized review, retransmission, dissemination, or other use of this
>> information by other than the intended recipient is prohibited. If you are
>> not the intended recipient and have received this email in error, please
>> contact the sender by reply e-mail and destroy all copies of the original
>> message.
>>> 
>> 
>> 

Reply via email to