[
https://issues.apache.org/jira/browse/ZOOKEEPER-795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12883316#action_12883316
]
Patrick Hunt commented on ZOOKEEPER-795:
----------------------------------------
A second user reported this issue to me.
When we fix this we should also address the event thread naming. Where the user
creates a new session from within the event thread context we end up with a
very long thread name (we keep appending the thread name to the parent
thread... so main-event-event-event-event, etc...)
> 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
>
>
> 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.