[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-795?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benjamin Reed updated ZOOKEEPER-795:
------------------------------------

    Attachment: ZOOKEEPER-795.patch

i've added a test. (added to the existing session expiration test, so it 
shouldn't add any running time to the tests)

> eventThread isn't shutdown after a connection "session expired" event coming
> ----------------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-795
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-795
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: java client
>    Affects Versions: 3.3.1
>         Environment: ubuntu 10.04
>            Reporter: mathieu barcikowski
>            Priority: Blocker
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ExpiredSessionThreadLeak.java, ZOOKEEPER-795.patch, 
> ZOOKEEPER-795.patch
>
>
> Hi,
> I notice a problem with the eventThread located in ClientCnxn.java file.
> The eventThread isn't shutdown after a connection "session expired" event 
> coming (i.e. never receive EventOfDeath).
> When a session timeout occurs and the session is marked as expired, the 
> connexion is fully closed (socket, SendThread...) expect for the eventThread.
> As a result, if i create a new zookeeper object and connect through it, I got 
> a zombi thread which will never be kill (as for the previous zookeeper 
> object, the state is already close, calling close again don't do anything).
> So everytime I will create a new zookeeper connection after a expired 
> session, I will have a one more zombi EventThread.
> How to reproduce :
> - Start a zookeeper client connection in debug mode
> - Pause the jvm enough time to the expired event occur
> - Watch for example with jvisualvm the list of threads, the sendThread is 
> succesfully killed, but the EventThread go to wait state for a infinity of 
> time
> - if you reopen a new zookeeper connection, and do again the previous steps, 
> another EventThread will be present in infinite wait state

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to