zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ZOOKEEPER-1669) Operations to server will be timed-out while thousands of sessions expired same time
Date Thu, 20 Jul 2017 04:50:01 GMT

    [ https://issues.apache.org/jira/browse/ZOOKEEPER-1669?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16094168#comment-16094168

ASF GitHub Bot commented on ZOOKEEPER-1669:

Github user hanm commented on the issue:

    @CheneySun some quick comments:
    * Can you please add more description to the pull request regarding how this patch fixes
the issue? You mentioned "just porting the work in [ZOOKEEPER-1347] ", but I don't see ZOOKEEPER-1347
has a patch nor it's committed to master.
    * There are some format only changes such as indentation changes - we prefer not mixing
format change with functional changes in a patch because it will make reviewer harder. But
for this case I think it's fine because old code was not well formatted and format only changes
are not too big to review.
    I'll take another pass on your patch later this week.

> Operations to server will be timed-out while thousands of sessions expired same time
> ------------------------------------------------------------------------------------
>                 Key: ZOOKEEPER-1669
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1669
>             Project: ZooKeeper
>          Issue Type: Improvement
>          Components: server
>    Affects Versions: 3.3.5
>            Reporter: tokoot
>            Assignee: Cheney Sun
>              Labels: performance
> If there are thousands of clients, and most of them disconnect with server same time(client
restarted or servers partitioned with clients), the server will busy to close those "connections"
and become unavailable. The problem is in following:
>   private void closeSessionWithoutWakeup(long sessionId) {
>       HashSet<NIOServerCnxn> cnxns;
>           synchronized (this.cnxns) {
>               cnxns = (HashSet<NIOServerCnxn>)this.cnxns.clone();  // other thread
will block because of here
>           }
>       ...
>   }

This message was sent by Atlassian JIRA

View raw message