Return-Path: X-Original-To: apmail-cloudstack-commits-archive@www.apache.org Delivered-To: apmail-cloudstack-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 7ACC418C3D for ; Mon, 18 Jan 2016 15:00:53 +0000 (UTC) Received: (qmail 66171 invoked by uid 500); 18 Jan 2016 15:00:53 -0000 Delivered-To: apmail-cloudstack-commits-archive@cloudstack.apache.org Received: (qmail 66012 invoked by uid 500); 18 Jan 2016 15:00:53 -0000 Mailing-List: contact commits-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list commits@cloudstack.apache.org Received: (qmail 65915 invoked by uid 99); 18 Jan 2016 15:00:53 -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; Mon, 18 Jan 2016 15:00:53 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id BF6DDE0484; Mon, 18 Jan 2016 15:00:52 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: remi@apache.org To: commits@cloudstack.apache.org Date: Mon, 18 Jan 2016 15:00:53 -0000 Message-Id: In-Reply-To: <393d300ca7f842168384fabc4a46c8c2@git.apache.org> References: <393d300ca7f842168384fabc4a46c8c2@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [2/6] git commit: updated refs/heads/master to fac259f Fix execution counter to support separate counts per thread Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/c35c4164 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/c35c4164 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/c35c4164 Branch: refs/heads/master Commit: c35c4164d94cd6c1878b841080e96ac073342ddd Parents: 21d2423 Author: Miguel Ferreira Authored: Thu Dec 17 19:47:08 2015 +0100 Committer: Miguel Ferreira Committed: Mon Jan 18 09:24:32 2016 +0100 ---------------------------------------------------------------------- .../java/com/cloud/network/nicira/ExecutionCounter.java | 12 ++++++++---- .../com/cloud/network/nicira/ExecutionCounterTest.java | 2 ++ 2 files changed, 10 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c35c4164/plugins/network-elements/nicira-nvp/src/main/java/com/cloud/network/nicira/ExecutionCounter.java ---------------------------------------------------------------------- diff --git a/plugins/network-elements/nicira-nvp/src/main/java/com/cloud/network/nicira/ExecutionCounter.java b/plugins/network-elements/nicira-nvp/src/main/java/com/cloud/network/nicira/ExecutionCounter.java index 1314498..7eedebb 100644 --- a/plugins/network-elements/nicira-nvp/src/main/java/com/cloud/network/nicira/ExecutionCounter.java +++ b/plugins/network-elements/nicira-nvp/src/main/java/com/cloud/network/nicira/ExecutionCounter.java @@ -19,15 +19,19 @@ package com.cloud.network.nicira; -import java.util.concurrent.atomic.AtomicInteger; - public class ExecutionCounter { private final int executionLimit; - private final AtomicInteger executionCount = new AtomicInteger(0); + private final ThreadLocal executionCount; public ExecutionCounter(final int executionLimit) { this.executionLimit = executionLimit; + executionCount = new ThreadLocal() { + @Override + protected Integer initialValue() { + return new Integer(0); + } + }; } public ExecutionCounter resetExecutionCounter() { @@ -40,7 +44,7 @@ public class ExecutionCounter { } public ExecutionCounter incrementExecutionCounter() { - executionCount.incrementAndGet(); + executionCount.set(executionCount.get() + 1); return this; } http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c35c4164/plugins/network-elements/nicira-nvp/src/test/java/com/cloud/network/nicira/ExecutionCounterTest.java ---------------------------------------------------------------------- diff --git a/plugins/network-elements/nicira-nvp/src/test/java/com/cloud/network/nicira/ExecutionCounterTest.java b/plugins/network-elements/nicira-nvp/src/test/java/com/cloud/network/nicira/ExecutionCounterTest.java index f063b75..b14694d 100644 --- a/plugins/network-elements/nicira-nvp/src/test/java/com/cloud/network/nicira/ExecutionCounterTest.java +++ b/plugins/network-elements/nicira-nvp/src/test/java/com/cloud/network/nicira/ExecutionCounterTest.java @@ -24,6 +24,7 @@ import static org.hamcrest.Matchers.equalTo; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; import org.junit.Test; @@ -92,6 +93,7 @@ public class ExecutionCounterTest { executorService.execute(task3); executorService.shutdown(); + executorService.awaitTermination(5L, TimeUnit.SECONDS); assertThat(counterTask1.get(), equalTo(4)); assertThat(counterTask2.get(), equalTo(2));