diff --git a/src/main/java/net/floodlightcontroller/counter/CounterStore.java b/src/main/java/net/floodlightcontroller/counter/CounterStore.java
index 9ec37349fe065623221244c4a68b7fdaabb0498e..5fcf17b2d084ee2c02f0d925a3e50322420f73db 100644
--- a/src/main/java/net/floodlightcontroller/counter/CounterStore.java
+++ b/src/main/java/net/floodlightcontroller/counter/CounterStore.java
@@ -66,7 +66,7 @@ public class CounterStore implements IFloodlightModule, ICounterStoreService {
     /**
      * A map of counterName --> Counter
      */
-    protected Map<String, CounterEntry> nameToCEIndex = 
+    protected ConcurrentHashMap<String, CounterEntry> nameToCEIndex = 
             new ConcurrentHashMap<String, CounterEntry>();
 
     protected ICounter heartbeatCounter;
@@ -389,17 +389,13 @@ public class CounterStore implements IFloodlightModule, ICounterStoreService {
         CounterEntry ce;
         ICounter c;
 
-        if (!nameToCEIndex.containsKey(key)) {
-            c = SimpleCounter.createCounter(new Date(), type);
-            ce = new CounterEntry();
-            ce.counter = c;
-            ce.title = key;
-            nameToCEIndex.put(key, ce);
-        } else {
-            throw new IllegalArgumentException("Title for counters must be unique, and there is already a counter with title " + key);
-        }
-
-        return c;
+        c = SimpleCounter.createCounter(new Date(), type);
+        ce = new CounterEntry();
+        ce.counter = c;
+        ce.title = key;
+        nameToCEIndex.putIfAbsent(key, ce);
+        
+        return nameToCEIndex.get(key).counter;
     }
 
     /**