Improve Executors related logging behavior
- Specify Logger for the Executor
- Use Executor#execute instead of ExecutorService#submit for
fire and forget type of usage.
Note: submit() will swallow thrown Exception
Change-Id: I507b841dc3feedf4ad20a746c304518d68fb846a
diff --git a/core/store/dist/src/main/java/org/onosproject/store/device/impl/GossipDeviceStore.java b/core/store/dist/src/main/java/org/onosproject/store/device/impl/GossipDeviceStore.java
index a10b79d..e5f40b3 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/device/impl/GossipDeviceStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/device/impl/GossipDeviceStore.java
@@ -96,13 +96,13 @@
import java.util.Set;
import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Predicates.notNull;
import static com.google.common.base.Verify.verify;
+import static java.util.concurrent.Executors.newCachedThreadPool;
import static java.util.concurrent.Executors.newSingleThreadScheduledExecutor;
import static org.apache.commons.lang3.concurrent.ConcurrentUtils.createIfAbsentUnchecked;
import static org.onlab.util.Tools.groupedThreads;
@@ -200,10 +200,10 @@
@Activate
public void activate() {
- executor = Executors.newCachedThreadPool(groupedThreads("onos/device", "fg-%d"));
+ executor = newCachedThreadPool(groupedThreads("onos/device", "fg-%d", log));
backgroundExecutor =
- newSingleThreadScheduledExecutor(minPriority(groupedThreads("onos/device", "bg-%d")));
+ newSingleThreadScheduledExecutor(minPriority(groupedThreads("onos/device", "bg-%d", log)));
clusterCommunicator.addSubscriber(
GossipDeviceStoreMessageSubjects.DEVICE_UPDATE, new InternalDeviceEventListener(), executor);