You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ch...@apache.org on 2017/05/24 04:55:37 UTC
svn commit: r1795998 -
/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/NodeStoreFixtureProvider.java
Author: chetanm
Date: Wed May 24 04:55:37 2017
New Revision: 1795998
URL: http://svn.apache.org/viewvc?rev=1795998&view=rev
Log:
OAK-6210 - Provide a consistent and extensible way to handle oak-run options while creating NodeStore
Use an existing executor to ensure that pool does not prevent
application from shutdown in case of some exception
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/NodeStoreFixtureProvider.java
Modified: jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/NodeStoreFixtureProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/NodeStoreFixtureProvider.java?rev=1795998&r1=1795997&r2=1795998&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/NodeStoreFixtureProvider.java (original)
+++ jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/NodeStoreFixtureProvider.java Wed May 24 04:55:37 2017
@@ -25,10 +25,12 @@ import java.io.IOException;
import java.net.UnknownHostException;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledThreadPoolExecutor;
import javax.sql.DataSource;
import com.google.common.io.Closer;
+import com.google.common.util.concurrent.MoreExecutors;
import com.mongodb.MongoClientURI;
import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
@@ -156,8 +158,8 @@ public class NodeStoreFixtureProvider {
private static StatisticsProvider createStatsProvider(Options options, Closer closer) {
if (options.getCommonOpts().isMetricsEnabled()) {
- ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
- closer.register(new ExecutorCloser(executorService));
+ ScheduledExecutorService executorService =
+ MoreExecutors.getExitingScheduledExecutorService(new ScheduledThreadPoolExecutor(1));
MetricStatisticsProvider statsProvider = new MetricStatisticsProvider(getPlatformMBeanServer(), executorService);
closer.register(statsProvider);
return statsProvider;