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 EB83C200BC3 for ; Fri, 18 Nov 2016 18:25:06 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id EA4AB160B1D; Fri, 18 Nov 2016 17:25:06 +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 7127D160B03 for ; Fri, 18 Nov 2016 18:25:06 +0100 (CET) Received: (qmail 95274 invoked by uid 500); 18 Nov 2016 17:25:05 -0000 Mailing-List: contact dev-help@brooklyn.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@brooklyn.apache.org Delivered-To: mailing list dev@brooklyn.apache.org Received: (qmail 95189 invoked by uid 99); 18 Nov 2016 17:25:04 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 18 Nov 2016 17:25:04 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 5D840E0230; Fri, 18 Nov 2016 17:25:04 +0000 (UTC) From: geomacy To: dev@brooklyn.apache.org Reply-To: dev@brooklyn.apache.org References: In-Reply-To: Subject: [GitHub] brooklyn-server pull request #443: Adds maxConcurrentChildCommands paramter ... Content-Type: text/plain Message-Id: <20161118172504.5D840E0230@git1-us-west.apache.org> Date: Fri, 18 Nov 2016 17:25:04 +0000 (UTC) archived-at: Fri, 18 Nov 2016 17:25:07 -0000 Github user geomacy commented on a diff in the pull request: https://github.com/apache/brooklyn-server/pull/443#discussion_r88697566 --- Diff: core/src/main/java/org/apache/brooklyn/entity/group/DynamicClusterImpl.java --- @@ -1040,14 +1077,80 @@ protected void discardNode(Entity entity) { protected void stopAndRemoveNode(Entity member) { removeMember(member); - try { if (member instanceof Startable) { - Task task = member.invoke(Startable.STOP, Collections.emptyMap()); + Task task = newThrottledEffectorTask(member, Startable.STOP, Collections.emptyMap()); task.getUnchecked(); } } finally { Entities.unmanage(member); } } + + protected Task newThrottledEffectorTask(Entity target, Effector effector, Map arguments) { + return newThrottledEffectorTask(target, effector, arguments, false); + } + + protected Task newThrottledEffectorTask(Entity target, Effector effector, Map arguments, boolean isPrivileged) { + final Semaphore permit = childTaskSemaphore; --- End diff -- why the local variable? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastructure@apache.org or file a JIRA ticket with INFRA. ---