Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 4A2BB200CCC for ; Fri, 21 Jul 2017 10:58:12 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 3FC8716C7B6; Fri, 21 Jul 2017 08:58:12 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 85FE516C7AB for ; Fri, 21 Jul 2017 10:58:11 +0200 (CEST) Received: (qmail 31423 invoked by uid 500); 21 Jul 2017 08:58:10 -0000 Mailing-List: contact dev-help@zookeeper.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@zookeeper.apache.org Delivered-To: mailing list dev@zookeeper.apache.org Received: (qmail 31412 invoked by uid 99); 21 Jul 2017 08:58:10 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 Jul 2017 08:58:10 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 25D56C0314 for ; Fri, 21 Jul 2017 08:58:10 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.201 X-Spam-Level: X-Spam-Status: No, score=-99.201 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id 3w0Sn_xoqp7J for ; Fri, 21 Jul 2017 08:58:03 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id 1095E5FB8D for ; Fri, 21 Jul 2017 08:58:03 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 8A287E0E4E for ; Fri, 21 Jul 2017 08:58:01 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 972FB21EF3 for ; Fri, 21 Jul 2017 08:58:00 +0000 (UTC) Date: Fri, 21 Jul 2017 08:58:00 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: dev@zookeeper.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (ZOOKEEPER-1669) Operations to server will be timed-out while thousands of sessions expired same time MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Fri, 21 Jul 2017 08:58:12 -0000 [ https://issues.apache.org/jira/browse/ZOOKEEPER-1669?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16095982#comment-16095982 ] ASF GitHub Bot commented on ZOOKEEPER-1669: ------------------------------------------- Github user CheneySun commented on the issue: https://github.com/apache/zookeeper/pull/312 @eribeiro Thanks for your reivew, I will replicate the changes to NettyServerCnxn. BTW, how to make use of NettyServerCnxn as the underlying transport? The NIOServerCnxn is default transport implementation, and I didn't find the knobs to switch to use NettyServerCnxn. > 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 cnxns; > synchronized (this.cnxns) { > cnxns = (HashSet)this.cnxns.clone(); // other thread will block because of here > } > ... > } -- This message was sent by Atlassian JIRA (v6.4.14#64029)