Skip to content

Commit

Permalink
Use Threads instead of ThreadFactoryBuilder
Browse files Browse the repository at this point in the history
  • Loading branch information
electrum committed Jul 14, 2014
1 parent 1b3074f commit f216c7a
Show file tree
Hide file tree
Showing 7 changed files with 38 additions and 39 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,29 +13,29 @@
*/
package com.facebook.presto.cassandra;

import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkNotNull;
import static io.airlift.configuration.ConfigurationModule.bindConfig;
import static io.airlift.json.JsonCodecBinder.jsonCodecBinder;
import static org.weakref.jmx.ObjectNames.generatedNameOf;
import static org.weakref.jmx.guice.ExportBinder.newExporter;
import io.airlift.json.JsonCodec;

import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

import javax.inject.Singleton;

import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.QueryOptions;
import com.datastax.driver.core.SocketOptions;
import com.datastax.driver.core.policies.ExponentialReconnectionPolicy;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.google.inject.Binder;
import com.google.inject.Module;
import com.google.inject.Provides;
import com.google.inject.Scopes;
import io.airlift.json.JsonCodec;

import javax.inject.Singleton;

import java.util.List;
import java.util.concurrent.ExecutorService;

import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkNotNull;
import static io.airlift.concurrent.Threads.daemonThreadsNamed;
import static io.airlift.configuration.ConfigurationModule.bindConfig;
import static io.airlift.json.JsonCodecBinder.jsonCodecBinder;
import static java.util.concurrent.Executors.newFixedThreadPool;
import static org.weakref.jmx.ObjectNames.generatedNameOf;
import static org.weakref.jmx.guice.ExportBinder.newExporter;

public class CassandraClientModule
implements Module
Expand Down Expand Up @@ -77,10 +77,9 @@ public void configure(Binder binder)
@Provides
public static ExecutorService createCachingCassandraSchemaExecutor(CassandraConnectorId clientId, CassandraClientConfig cassandraClientConfig)
{
return Executors.newFixedThreadPool(
return newFixedThreadPool(
cassandraClientConfig.getMaxSchemaRefreshThreads(),
new ThreadFactoryBuilder().setDaemon(true)
.setNameFormat("cassandra-" + clientId + "-%d").build());
daemonThreadsNamed("cassandra-" + clientId + "-%s"));
}

@Singleton
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
import com.facebook.presto.spi.TableNotFoundException;
import com.google.common.collect.ImmutableList;
import com.google.common.util.concurrent.ListeningExecutorService;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import io.airlift.units.Duration;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
Expand All @@ -28,6 +27,7 @@
import static com.facebook.presto.cassandra.MockCassandraSession.TEST_SCHEMA;
import static com.facebook.presto.cassandra.MockCassandraSession.TEST_TABLE;
import static com.google.common.util.concurrent.MoreExecutors.listeningDecorator;
import static io.airlift.concurrent.Threads.daemonThreadsNamed;
import static java.util.concurrent.Executors.newCachedThreadPool;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
Expand All @@ -44,7 +44,7 @@ public void setUp()
throws Exception
{
mockSession = new MockCassandraSession(CONNECTOR_ID, new CassandraClientConfig());
ListeningExecutorService executor = listeningDecorator(newCachedThreadPool(new ThreadFactoryBuilder().setDaemon(true).build()));
ListeningExecutorService executor = listeningDecorator(newCachedThreadPool(daemonThreadsNamed("test-%s")));
schemaProvider = new CachingCassandraSchemaProvider(
CONNECTOR_ID,
mockSession,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
import com.google.common.util.concurrent.ListeningExecutorService;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import io.airlift.command.Command;
import io.airlift.command.HelpOption;
import io.airlift.command.Option;
Expand Down Expand Up @@ -65,6 +64,7 @@
import static com.google.common.net.HttpHeaders.USER_AGENT;
import static com.google.common.util.concurrent.MoreExecutors.listeningDecorator;
import static io.airlift.command.SingleCommand.singleCommand;
import static io.airlift.concurrent.Threads.daemonThreadsNamed;
import static io.airlift.http.client.HttpUriBuilder.uriBuilderFrom;
import static io.airlift.http.client.Request.Builder.preparePost;
import static io.airlift.http.client.StaticBodyGenerator.createStaticBodyGenerator;
Expand Down Expand Up @@ -152,7 +152,7 @@ public static class ParallelQueryRunner

public ParallelQueryRunner(int maxParallelism, URI server, String catalog, String schema, boolean debug)
{
executor = listeningDecorator(newCachedThreadPool(new ThreadFactoryBuilder().setNameFormat("query-runner-%s").setDaemon(true).build()));
executor = listeningDecorator(newCachedThreadPool(daemonThreadsNamed("query-runner-%s")));

ImmutableList.Builder<QueryRunner> runners = ImmutableList.builder();
for (int i = 0; i < maxParallelism; i++) {
Expand Down
11 changes: 5 additions & 6 deletions presto-hive/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,11 @@
</exclusions>
</dependency>

<dependency>
<groupId>io.airlift</groupId>
<artifactId>concurrent</artifactId>
</dependency>

<dependency>
<groupId>io.airlift</groupId>
<artifactId>log</artifactId>
Expand Down Expand Up @@ -189,12 +194,6 @@
<scope>test</scope>
</dependency>

<dependency>
<groupId>io.airlift</groupId>
<artifactId>concurrent</artifactId>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
import com.facebook.presto.hive.metastore.CachingHiveMetastore;
import com.facebook.presto.hive.metastore.HiveMetastore;
import com.google.common.net.HostAndPort;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.google.inject.Binder;
import com.google.inject.Injector;
import com.google.inject.Module;
Expand All @@ -27,13 +26,15 @@

import java.net.URI;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Strings.isNullOrEmpty;
import static io.airlift.concurrent.Threads.daemonThreadsNamed;
import static io.airlift.configuration.ConfigurationModule.bindConfig;
import static io.airlift.discovery.client.DiscoveryBinder.discoveryBinder;
import static java.util.concurrent.Executors.newCachedThreadPool;
import static java.util.concurrent.Executors.newFixedThreadPool;
import static org.weakref.jmx.ObjectNames.generatedNameOf;
import static org.weakref.jmx.guice.ExportBinder.newExporter;

Expand Down Expand Up @@ -83,17 +84,17 @@ public void configure(Binder binder)
@Provides
public ExecutorService createHiveClientExecutor(HiveConnectorId hiveClientId)
{
return Executors.newCachedThreadPool(new ThreadFactoryBuilder().setDaemon(true).setNameFormat("hive-" + hiveClientId + "-%d").build());
return newCachedThreadPool(daemonThreadsNamed("hive-" + hiveClientId + "-%s"));
}

@ForHiveMetastore
@Singleton
@Provides
public ExecutorService createCachingHiveMetastoreExecutor(HiveConnectorId hiveClientId, HiveClientConfig hiveClientConfig)
{
return Executors.newFixedThreadPool(
return newFixedThreadPool(
hiveClientConfig.getMaxMetastoreRefreshThreads(),
new ThreadFactoryBuilder().setDaemon(true).setNameFormat("hive-metastore-" + hiveClientId + "-%d").build());
daemonThreadsNamed("hive-metastore-" + hiveClientId + "-%s"));
}

@Singleton
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,21 @@
import com.facebook.presto.hive.HiveMetastoreClient;
import com.google.common.collect.ImmutableList;
import com.google.common.util.concurrent.ListeningExecutorService;
import com.google.common.util.concurrent.MoreExecutors;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import io.airlift.units.Duration;
import org.apache.hadoop.hive.metastore.api.NoSuchObjectException;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;

import static com.facebook.presto.hive.metastore.MockHiveMetastoreClient.BAD_DATABASE;
import static com.facebook.presto.hive.metastore.MockHiveMetastoreClient.TEST_DATABASE;
import static com.facebook.presto.hive.metastore.MockHiveMetastoreClient.TEST_PARTITION1;
import static com.facebook.presto.hive.metastore.MockHiveMetastoreClient.TEST_PARTITION2;
import static com.facebook.presto.hive.metastore.MockHiveMetastoreClient.TEST_TABLE;
import static com.google.common.util.concurrent.MoreExecutors.listeningDecorator;
import static io.airlift.concurrent.Threads.daemonThreadsNamed;
import static java.util.concurrent.Executors.newCachedThreadPool;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;

Expand All @@ -47,7 +47,7 @@ public void setUp()
{
mockClient = new MockHiveMetastoreClient();
MockHiveCluster mockHiveCluster = new MockHiveCluster(mockClient);
ListeningExecutorService executor = MoreExecutors.listeningDecorator(Executors.newCachedThreadPool(new ThreadFactoryBuilder().setDaemon(true).build()));
ListeningExecutorService executor = listeningDecorator(newCachedThreadPool(daemonThreadsNamed("test-%s")));
metastore = new CachingHiveMetastore(mockHiveCluster, executor, new Duration(5, TimeUnit.MINUTES), new Duration(1, TimeUnit.MINUTES));
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
import com.google.common.base.Throwables;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Ordering;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import org.testng.annotations.Test;

import java.util.ArrayList;
Expand All @@ -28,6 +27,7 @@
import java.util.concurrent.Future;
import java.util.concurrent.LinkedBlockingDeque;

import static io.airlift.concurrent.Threads.daemonThreadsNamed;
import static org.testng.Assert.assertTrue;

public class TestFairBatchExecutor
Expand All @@ -36,7 +36,7 @@ public class TestFairBatchExecutor
public void testSanity()
throws Exception
{
FairBatchExecutor executor = new FairBatchExecutor(1, new ThreadFactoryBuilder().setDaemon(true).build());
FairBatchExecutor executor = new FairBatchExecutor(1, daemonThreadsNamed("test-%s"));

// first, block the executor until we're ready
final CountDownLatch readyToStart = new CountDownLatch(1);
Expand Down

0 comments on commit f216c7a

Please sign in to comment.