You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sn...@apache.org on 2016/08/18 01:45:30 UTC
[3/6] cassandra git commit: Let DatabaseDescriptor not implicitly
startup services
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/service/StorageProxy.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageProxy.java b/src/java/org/apache/cassandra/service/StorageProxy.java
index 9cfbd68..a0f39af 100644
--- a/src/java/org/apache/cassandra/service/StorageProxy.java
+++ b/src/java/org/apache/cassandra/service/StorageProxy.java
@@ -45,6 +45,7 @@ import org.apache.cassandra.concurrent.StageManager;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.filter.DataLimits;
import org.apache.cassandra.db.filter.TombstoneOverwhelmingException;
@@ -964,7 +965,7 @@ public class StorageProxy implements StorageProxyMBean
WriteResponseHandler<?> handler = new WriteResponseHandler<>(endpoints.all,
Collections.<InetAddress>emptyList(),
endpoints.all.size() == 1 ? ConsistencyLevel.ONE : ConsistencyLevel.TWO,
- Keyspace.open(SystemKeyspace.NAME),
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME),
null,
WriteType.BATCH_LOG,
queryStartNanoTime);
@@ -1519,7 +1520,7 @@ public class StorageProxy implements StorageProxyMBean
private static boolean systemKeyspaceQuery(List<? extends ReadCommand> cmds)
{
for (ReadCommand cmd : cmds)
- if (!Schema.isSystemKeyspace(cmd.metadata().ksName))
+ if (!SchemaConstants.isSystemKeyspace(cmd.metadata().ksName))
return false;
return true;
}
@@ -1841,7 +1842,7 @@ public class StorageProxy implements StorageProxyMBean
{
try
{
- command.setMonitoringTime(new ConstructionTime(constructionTime), timeout, DatabaseDescriptor.getSlowQueryTimeout());
+ command.setMonitoringTime(new ConstructionTime(constructionTime), verb.getTimeout(), DatabaseDescriptor.getSlowQueryTimeout());
ReadResponse response;
try (ReadExecutionController executionController = command.executionController();
@@ -2522,19 +2523,17 @@ public class StorageProxy implements StorageProxyMBean
{
final long constructionTime;
final MessagingService.Verb verb;
- final long timeout;
public DroppableRunnable(MessagingService.Verb verb)
{
this.constructionTime = System.currentTimeMillis();
this.verb = verb;
- this.timeout = DatabaseDescriptor.getTimeout(verb);
}
public final void run()
{
long timeTaken = System.currentTimeMillis() - constructionTime;
- if (timeTaken > timeout)
+ if (timeTaken > verb.getTimeout())
{
MessagingService.instance().incrementDroppedMessages(verb, timeTaken);
return;
@@ -2575,7 +2574,7 @@ public class StorageProxy implements StorageProxyMBean
public final void run()
{
final MessagingService.Verb verb = verb();
- long mutationTimeout = DatabaseDescriptor.getTimeout(verb);
+ long mutationTimeout = verb.getTimeout();
long timeTaken = System.currentTimeMillis() - constructionTime;
if (timeTaken > mutationTimeout)
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 116989c..cbf8b05 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -57,6 +57,7 @@ import org.apache.cassandra.concurrent.StageManager;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.commitlog.CommitLog;
import org.apache.cassandra.db.compaction.CompactionManager;
@@ -634,7 +635,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
}, "StorageServiceShutdownHook");
Runtime.getRuntime().addShutdownHook(drainOnShutdown);
- replacing = DatabaseDescriptor.isReplacing();
+ replacing = isReplacing();
if (!Boolean.parseBoolean(System.getProperty("cassandra.start_gossip", "true")))
{
@@ -704,6 +705,16 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
}
}
+ private boolean isReplacing()
+ {
+ if (System.getProperty("cassandra.replace_address_first_boot", null) != null && SystemKeyspace.bootstrapComplete())
+ {
+ logger.info("Replace address on first boot requested; this node is already bootstrapped");
+ return false;
+ }
+ return DatabaseDescriptor.getReplaceAddress() != null;
+ }
+
/**
* In the event of forceful termination we need to remove the shutdown hook to prevent hanging (OOM for instance)
*/
@@ -846,7 +857,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
for (int i = 0; i < delay; i += 1000)
{
// if we see schema, we can proceed to the next check directly
- if (!Schema.instance.getVersion().equals(Schema.emptyVersion))
+ if (!Schema.instance.getVersion().equals(SchemaConstants.emptyVersion))
{
logger.debug("got schema: {}", Schema.instance.getVersion());
break;
@@ -2722,7 +2733,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
public int forceKeyspaceCleanup(int jobs, String keyspaceName, String... tables) throws IOException, ExecutionException, InterruptedException
{
- if (Schema.isSystemKeyspace(keyspaceName))
+ if (SchemaConstants.isSystemKeyspace(keyspaceName))
throw new RuntimeException("Cleanup of the system keyspace is neither necessary nor wise");
CompactionManager.AllSSTableOpStatus status = CompactionManager.AllSSTableOpStatus.SUCCESSFUL;
@@ -3045,7 +3056,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
Map<String, TabularData> snapshotMap = new HashMap<>();
for (Keyspace keyspace : Keyspace.all())
{
- if (Schema.isSystemKeyspace(keyspace.getName()))
+ if (SchemaConstants.isSystemKeyspace(keyspace.getName()))
continue;
for (ColumnFamilyStore cfStore : keyspace.getColumnFamilyStores())
@@ -3071,7 +3082,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
long total = 0;
for (Keyspace keyspace : Keyspace.all())
{
- if (Schema.isSystemKeyspace(keyspace.getName()))
+ if (SchemaConstants.isSystemKeyspace(keyspace.getName()))
continue;
for (ColumnFamilyStore cfStore : keyspace.getColumnFamilyStores())
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/streaming/messages/FileMessageHeader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/streaming/messages/FileMessageHeader.java b/src/java/org/apache/cassandra/streaming/messages/FileMessageHeader.java
index 32d814b..232727d 100644
--- a/src/java/org/apache/cassandra/streaming/messages/FileMessageHeader.java
+++ b/src/java/org/apache/cassandra/streaming/messages/FileMessageHeader.java
@@ -22,7 +22,6 @@ import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
-import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.SerializationHeader;
import org.apache.cassandra.db.TypeSizes;
import org.apache.cassandra.io.compress.CompressionMetadata;
@@ -222,7 +221,7 @@ public class FileMessageHeader
{
UUID cfId = UUIDSerializer.serializer.deserialize(in, MessagingService.current_version);
int sequenceNumber = in.readInt();
- Version sstableVersion = DatabaseDescriptor.getSSTableFormat().info.getVersion(in.readUTF());
+ Version sstableVersion = SSTableFormat.Type.current().info.getVersion(in.readUTF());
SSTableFormat.Type format = SSTableFormat.Type.LEGACY;
if (version >= StreamMessage.VERSION_22)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/thrift/TServerCustomFactory.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/thrift/TServerCustomFactory.java b/src/java/org/apache/cassandra/thrift/TServerCustomFactory.java
index 3c5b967..e98e6f2 100644
--- a/src/java/org/apache/cassandra/thrift/TServerCustomFactory.java
+++ b/src/java/org/apache/cassandra/thrift/TServerCustomFactory.java
@@ -41,16 +41,16 @@ public class TServerCustomFactory implements TServerFactory
public TServer buildTServer(TServerFactory.Args args)
{
TServer server;
- if (ThriftServer.SYNC.equalsIgnoreCase(serverType))
+ if (ThriftServer.ThriftServerType.SYNC.equalsIgnoreCase(serverType))
{
server = new CustomTThreadPoolServer.Factory().buildTServer(args);
}
- else if(ThriftServer.ASYNC.equalsIgnoreCase(serverType))
+ else if(ThriftServer.ThriftServerType.ASYNC.equalsIgnoreCase(serverType))
{
server = new CustomTNonBlockingServer.Factory().buildTServer(args);
logger.info(String.format("Using non-blocking/asynchronous thrift server on %s : %s", args.addr.getHostName(), args.addr.getPort()));
}
- else if(ThriftServer.HSHA.equalsIgnoreCase(serverType))
+ else if(ThriftServer.ThriftServerType.HSHA.equalsIgnoreCase(serverType))
{
server = new THsHaDisruptorServer.Factory().buildTServer(args);
logger.info(String.format("Using custom half-sync/half-async thrift server on %s : %s", args.addr.getHostName(), args.addr.getPort()));
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/thrift/ThriftServer.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/thrift/ThriftServer.java b/src/java/org/apache/cassandra/thrift/ThriftServer.java
index 44ec524..21ee475 100644
--- a/src/java/org/apache/cassandra/thrift/ThriftServer.java
+++ b/src/java/org/apache/cassandra/thrift/ThriftServer.java
@@ -33,10 +33,7 @@ import org.apache.thrift.transport.TTransportFactory;
public class ThriftServer implements CassandraDaemon.Server
{
- private static Logger logger = LoggerFactory.getLogger(ThriftServer.class);
- public final static String SYNC = "sync";
- public final static String ASYNC = "async";
- public final static String HSHA = "hsha";
+ private static final Logger logger = LoggerFactory.getLogger(ThriftServer.class);
protected final InetAddress address;
protected final int port;
@@ -143,4 +140,11 @@ public class ThriftServer implements CassandraDaemon.Server
serverEngine.stop();
}
}
+
+ public static final class ThriftServerType
+ {
+ public final static String SYNC = "sync";
+ public final static String ASYNC = "async";
+ public final static String HSHA = "hsha";
+ }
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/thrift/ThriftValidation.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/thrift/ThriftValidation.java b/src/java/org/apache/cassandra/thrift/ThriftValidation.java
index be3e489..56c4865 100644
--- a/src/java/org/apache/cassandra/thrift/ThriftValidation.java
+++ b/src/java/org/apache/cassandra/thrift/ThriftValidation.java
@@ -28,6 +28,7 @@ import org.slf4j.LoggerFactory;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.ColumnDefinition;
import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.Attributes;
import org.apache.cassandra.cql3.Operator;
import org.apache.cassandra.db.*;
@@ -636,7 +637,7 @@ public class ThriftValidation
public static void validateKeyspaceNotSystem(String modifiedKeyspace) throws org.apache.cassandra.exceptions.InvalidRequestException
{
- if (Schema.isSystemKeyspace(modifiedKeyspace))
+ if (SchemaConstants.isSystemKeyspace(modifiedKeyspace))
throw new org.apache.cassandra.exceptions.InvalidRequestException(String.format("%s keyspace is not user-modifiable", modifiedKeyspace));
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/BulkLoader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/BulkLoader.java b/src/java/org/apache/cassandra/tools/BulkLoader.java
index c094d0a..7d10cdc 100644
--- a/src/java/org/apache/cassandra/tools/BulkLoader.java
+++ b/src/java/org/apache/cassandra/tools/BulkLoader.java
@@ -30,7 +30,6 @@ import com.google.common.collect.Multimap;
import org.apache.commons.cli.Option;
import org.apache.commons.cli.Options;
-import org.apache.cassandra.config.Config;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.config.EncryptionOptions;
import org.apache.cassandra.io.sstable.SSTableLoader;
@@ -51,7 +50,7 @@ public class BulkLoader
public static void load(LoaderOptions options) throws BulkLoadException
{
- Config.setClientMode(true);
+ DatabaseDescriptor.toolInitialization();
OutputHandler handler = new OutputHandler.SystemOutput(options.verbose, options.debug);
SSTableLoader loader = new SSTableLoader(
options.directory,
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/NodeProbe.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeProbe.java b/src/java/org/apache/cassandra/tools/NodeProbe.java
index bd0d8db..89e7bda 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -267,8 +267,10 @@ public class NodeProbe implements AutoCloseable
private void checkJobs(PrintStream out, int jobs)
{
+ // TODO this should get the configured number of concurrent_compactors via JMX and not using DatabaseDescriptor
+ DatabaseDescriptor.toolInitialization();
if (jobs > DatabaseDescriptor.getConcurrentCompactors())
- out.println(String.format("jobs (%d) is bigger than configured concurrent_compactors (%d), using at most %d threads", jobs, DatabaseDescriptor.getConcurrentCompactors(), DatabaseDescriptor.getConcurrentCompactors()));
+ out.println(String.format("jobs (%d) is bigger than configured concurrent_compactors (%d) on this host, using at most %d threads", jobs, DatabaseDescriptor.getConcurrentCompactors(), DatabaseDescriptor.getConcurrentCompactors()));
}
public void forceKeyspaceCleanup(PrintStream out, int jobs, String keyspaceName, String... tableNames) throws IOException, ExecutionException, InterruptedException
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/SSTableExport.java b/src/java/org/apache/cassandra/tools/SSTableExport.java
index f05898f..13c9528 100644
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@ -28,7 +28,7 @@ import java.util.stream.StreamSupport;
import org.apache.commons.cli.*;
import org.apache.cassandra.config.CFMetaData;
-import org.apache.cassandra.config.Config;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.cql3.ColumnIdentifier;
import org.apache.cassandra.db.DecoratedKey;
import org.apache.cassandra.db.PartitionPosition;
@@ -62,7 +62,7 @@ public class SSTableExport
static
{
- Config.setClientMode(true);
+ DatabaseDescriptor.toolInitialization();
Option optKey = new Option(KEY_OPTION, true, "Partition key");
// Number of times -k <key> can be passed on the command line.
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/SSTableRepairedAtSetter.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/SSTableRepairedAtSetter.java b/src/java/org/apache/cassandra/tools/SSTableRepairedAtSetter.java
index 3608808..413ec4d 100644
--- a/src/java/org/apache/cassandra/tools/SSTableRepairedAtSetter.java
+++ b/src/java/org/apache/cassandra/tools/SSTableRepairedAtSetter.java
@@ -26,6 +26,7 @@ import java.util.Arrays;
import java.util.List;
import org.apache.cassandra.config.Config;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.io.sstable.Component;
import org.apache.cassandra.io.sstable.Descriptor;
import org.apache.cassandra.service.ActiveRepairService;
@@ -48,9 +49,6 @@ public class SSTableRepairedAtSetter
*/
public static void main(final String[] args) throws IOException
{
- // Necessary since BufferPool used in RandomAccessReader needs to access DatabaseDescriptor
- Config.setClientMode(true);
-
PrintStream out = System.out;
if (args.length == 0)
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
index 7aa07d0..2e8ee0b 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
@@ -19,6 +19,7 @@
package org.apache.cassandra.tools;
import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.config.Schema;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Directories;
@@ -48,6 +49,7 @@ public class StandaloneSSTableUtil
try
{
// load keyspace descriptions.
+ Util.initDatabaseDescriptor();
Schema.instance.loadFromDisk(false);
CFMetaData metadata = Schema.instance.getCFMetaData(options.keyspaceName, options.cfName);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneScrubber.java b/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
index 42772ef..f544089 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
@@ -1,4 +1,4 @@
-/**
+/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/StandaloneSplitter.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneSplitter.java b/src/java/org/apache/cassandra/tools/StandaloneSplitter.java
index 57504c3..1e57ff4 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneSplitter.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneSplitter.java
@@ -1,4 +1,4 @@
-/**
+/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/StandaloneUpgrader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneUpgrader.java b/src/java/org/apache/cassandra/tools/StandaloneUpgrader.java
index ef80d34..e49f0ca 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneUpgrader.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneUpgrader.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.tools;
import java.util.*;
import java.util.concurrent.TimeUnit;
+import org.apache.cassandra.io.sstable.format.SSTableFormat;
import org.apache.cassandra.io.sstable.format.SSTableReader;
import org.apache.commons.cli.*;
@@ -82,7 +83,7 @@ public class StandaloneUpgrader
try
{
SSTableReader sstable = SSTableReader.openNoValidation(entry.getKey(), components, cfs);
- if (sstable.descriptor.version.equals(DatabaseDescriptor.getSSTableFormat().info.getLatestVersion()))
+ if (sstable.descriptor.version.equals(SSTableFormat.Type.current().info.getLatestVersion()))
continue;
readers.add(sstable);
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/StandaloneVerifier.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneVerifier.java b/src/java/org/apache/cassandra/tools/StandaloneVerifier.java
index d358882..ee55dd5 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneVerifier.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneVerifier.java
@@ -1,4 +1,4 @@
-/**
+/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/Util.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/Util.java b/src/java/org/apache/cassandra/tools/Util.java
index 6e23361..76011a9 100644
--- a/src/java/org/apache/cassandra/tools/Util.java
+++ b/src/java/org/apache/cassandra/tools/Util.java
@@ -35,22 +35,21 @@ public final class Util
{
try
{
- DatabaseDescriptor.forceStaticInitialization();
+ DatabaseDescriptor.toolInitialization();
}
- catch (ExceptionInInitializerError e)
+ catch (Throwable e)
{
- Throwable cause = e.getCause();
- boolean logStackTrace = !(cause instanceof ConfigurationException) || ((ConfigurationException) cause).logStackTrace;
- System.out.println("Exception (" + cause.getClass().getName() + ") encountered during startup: " + cause.getMessage());
+ boolean logStackTrace = !(e instanceof ConfigurationException) || ((ConfigurationException) e).logStackTrace;
+ System.out.println("Exception (" + e.getClass().getName() + ") encountered during startup: " + e.getMessage());
if (logStackTrace)
{
- cause.printStackTrace();
+ e.printStackTrace();
System.exit(3);
}
else
{
- System.err.println(cause.getMessage());
+ System.err.println(e.getMessage());
System.exit(3);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/nodetool/Cleanup.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/nodetool/Cleanup.java b/src/java/org/apache/cassandra/tools/nodetool/Cleanup.java
index 41e9b01..c964b2f 100644
--- a/src/java/org/apache/cassandra/tools/nodetool/Cleanup.java
+++ b/src/java/org/apache/cassandra/tools/nodetool/Cleanup.java
@@ -23,8 +23,8 @@ import io.airlift.command.Command;
import java.util.ArrayList;
import java.util.List;
-import org.apache.cassandra.config.Schema;
import io.airlift.command.Option;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.tools.NodeProbe;
import org.apache.cassandra.tools.NodeTool.NodeToolCmd;
@@ -47,7 +47,7 @@ public class Cleanup extends NodeToolCmd
for (String keyspace : keyspaces)
{
- if (Schema.isSystemKeyspace(keyspace))
+ if (SchemaConstants.isSystemKeyspace(keyspace))
continue;
try
@@ -60,4 +60,4 @@ public class Cleanup extends NodeToolCmd
}
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tools/nodetool/Repair.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/nodetool/Repair.java b/src/java/org/apache/cassandra/tools/nodetool/Repair.java
index 5383fa5..350601a 100644
--- a/src/java/org/apache/cassandra/tools/nodetool/Repair.java
+++ b/src/java/org/apache/cassandra/tools/nodetool/Repair.java
@@ -31,8 +31,8 @@ import java.util.Set;
import com.google.common.collect.Sets;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.repair.RepairParallelism;
-import org.apache.cassandra.repair.SystemDistributedKeyspace;
import org.apache.cassandra.repair.messages.RepairOption;
import org.apache.cassandra.tools.NodeProbe;
import org.apache.cassandra.tools.NodeTool.NodeToolCmd;
@@ -41,7 +41,7 @@ import org.apache.commons.lang3.StringUtils;
@Command(name = "repair", description = "Repair one or more tables")
public class Repair extends NodeToolCmd
{
- public final static Set<String> ONLY_EXPLICITLY_REPAIRED = Sets.newHashSet(SystemDistributedKeyspace.NAME);
+ public final static Set<String> ONLY_EXPLICITLY_REPAIRED = Sets.newHashSet(SchemaConstants.DISTRIBUTED_KEYSPACE_NAME);
@Arguments(usage = "[<keyspace> <tables>...]", description = "The keyspace followed by one or many tables")
private List<String> args = new ArrayList<>();
@@ -134,4 +134,4 @@ public class Repair extends NodeToolCmd
}
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tracing/TraceKeyspace.java b/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
index 5c400a9..ac8b4f7 100644
--- a/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
+++ b/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
@@ -22,6 +22,7 @@ import java.nio.ByteBuffer;
import java.util.*;
import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.db.Mutation;
import org.apache.cassandra.db.rows.Row;
import org.apache.cassandra.db.partitions.PartitionUpdate;
@@ -37,8 +38,6 @@ public final class TraceKeyspace
{
}
- public static final String NAME = "system_traces";
-
public static final String SESSIONS = "sessions";
public static final String EVENTS = "events";
@@ -70,13 +69,13 @@ public final class TraceKeyspace
private static CFMetaData compile(String name, String description, String schema)
{
- return CFMetaData.compile(String.format(schema, name), NAME)
+ return CFMetaData.compile(String.format(schema, name), SchemaConstants.TRACE_KEYSPACE_NAME)
.comment(description);
}
public static KeyspaceMetadata metadata()
{
- return KeyspaceMetadata.create(NAME, KeyspaceParams.simple(2), Tables.of(Sessions, Events));
+ return KeyspaceMetadata.create(SchemaConstants.TRACE_KEYSPACE_NAME, KeyspaceParams.simple(2), Tables.of(Sessions, Events));
}
static Mutation makeStartSessionMutation(ByteBuffer sessionId,
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/transport/Client.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/transport/Client.java b/src/java/org/apache/cassandra/transport/Client.java
index 92466d2..84f3a43 100644
--- a/src/java/org/apache/cassandra/transport/Client.java
+++ b/src/java/org/apache/cassandra/transport/Client.java
@@ -27,7 +27,7 @@ import java.util.*;
import com.google.common.base.Splitter;
import org.apache.cassandra.auth.PasswordAuthenticator;
-import org.apache.cassandra.config.Config;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.cql3.QueryOptions;
import org.apache.cassandra.db.ConsistencyLevel;
import org.apache.cassandra.db.marshal.Int32Type;
@@ -238,7 +238,7 @@ public class Client extends SimpleClient
public static void main(String[] args) throws Exception
{
- Config.setClientMode(true);
+ DatabaseDescriptor.clientInitialization();
// Print usage if no argument is specified.
if (args.length < 2 || args.length > 3)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/utils/FBUtilities.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/FBUtilities.java b/src/java/org/apache/cassandra/utils/FBUtilities.java
index 28334df..16c17c3 100644
--- a/src/java/org/apache/cassandra/utils/FBUtilities.java
+++ b/src/java/org/apache/cassandra/utils/FBUtilities.java
@@ -55,7 +55,6 @@ import org.apache.cassandra.io.sstable.Descriptor;
import org.apache.cassandra.io.sstable.metadata.MetadataComponent;
import org.apache.cassandra.io.sstable.metadata.MetadataType;
import org.apache.cassandra.io.sstable.metadata.ValidationMetadata;
-import org.apache.cassandra.schema.CompressionParams;
import org.apache.cassandra.io.util.DataOutputBuffer;
import org.apache.cassandra.io.util.DataOutputBufferFixed;
import org.apache.cassandra.io.util.FileUtils;
@@ -735,20 +734,6 @@ public class FBUtilities
buffer.position(position);
}
- private static final ThreadLocal<byte[]> threadLocalScratchBuffer = new ThreadLocal<byte[]>()
- {
- @Override
- protected byte[] initialValue()
- {
- return new byte[CompressionParams.DEFAULT_CHUNK_LENGTH];
- }
- };
-
- public static byte[] getThreadLocalScratchBuffer()
- {
- return threadLocalScratchBuffer.get();
- }
-
public static long abs(long index)
{
long negbit = index >> 63;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/src/java/org/apache/cassandra/utils/NativeSSTableLoaderClient.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/NativeSSTableLoaderClient.java b/src/java/org/apache/cassandra/utils/NativeSSTableLoaderClient.java
index 5bcbcf7..6c5b692 100644
--- a/src/java/org/apache/cassandra/utils/NativeSSTableLoaderClient.java
+++ b/src/java/org/apache/cassandra/utils/NativeSSTableLoaderClient.java
@@ -25,6 +25,7 @@ import com.datastax.driver.core.*;
import org.apache.cassandra.config.ColumnDefinition;
import org.apache.cassandra.config.ColumnDefinition.ClusteringOrder;
import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.ColumnIdentifier;
import org.apache.cassandra.db.marshal.*;
import org.apache.cassandra.dht.*;
@@ -107,7 +108,7 @@ public class NativeSSTableLoaderClient extends SSTableLoader.Client
private static Types fetchTypes(String keyspace, Session session)
{
- String query = String.format("SELECT * FROM %s.%s WHERE keyspace_name = ?", SchemaKeyspace.NAME, SchemaKeyspace.TYPES);
+ String query = String.format("SELECT * FROM %s.%s WHERE keyspace_name = ?", SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.TYPES);
Types.RawBuilder types = Types.rawBuilder(keyspace);
for (Row row : session.execute(query, keyspace))
@@ -132,7 +133,7 @@ public class NativeSSTableLoaderClient extends SSTableLoader.Client
private static Map<String, CFMetaData> fetchTables(String keyspace, Session session, IPartitioner partitioner, Types types)
{
Map<String, CFMetaData> tables = new HashMap<>();
- String query = String.format("SELECT * FROM %s.%s WHERE keyspace_name = ?", SchemaKeyspace.NAME, SchemaKeyspace.TABLES);
+ String query = String.format("SELECT * FROM %s.%s WHERE keyspace_name = ?", SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.TABLES);
for (Row row : session.execute(query, keyspace))
{
@@ -149,7 +150,7 @@ public class NativeSSTableLoaderClient extends SSTableLoader.Client
private static Map<String, CFMetaData> fetchViews(String keyspace, Session session, IPartitioner partitioner, Types types)
{
Map<String, CFMetaData> tables = new HashMap<>();
- String query = String.format("SELECT * FROM %s.%s WHERE keyspace_name = ?", SchemaKeyspace.NAME, SchemaKeyspace.VIEWS);
+ String query = String.format("SELECT * FROM %s.%s WHERE keyspace_name = ?", SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.VIEWS);
for (Row row : session.execute(query, keyspace))
{
@@ -177,7 +178,7 @@ public class NativeSSTableLoaderClient extends SSTableLoader.Client
boolean isCompound = isView || flags.contains(CFMetaData.Flag.COMPOUND);
String columnsQuery = String.format("SELECT * FROM %s.%s WHERE keyspace_name = ? AND table_name = ?",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.COLUMNS);
List<ColumnDefinition> defs = new ArrayList<>();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/long/org/apache/cassandra/db/commitlog/CommitLogStressTest.java
----------------------------------------------------------------------
diff --git a/test/long/org/apache/cassandra/db/commitlog/CommitLogStressTest.java b/test/long/org/apache/cassandra/db/commitlog/CommitLogStressTest.java
index 810e8bf..3f5be03 100644
--- a/test/long/org/apache/cassandra/db/commitlog/CommitLogStressTest.java
+++ b/test/long/org/apache/cassandra/db/commitlog/CommitLogStressTest.java
@@ -53,6 +53,11 @@ import org.apache.cassandra.security.EncryptionContextGenerator;
public class CommitLogStressTest
{
+ static
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
public static ByteBuffer dataSource;
public static int NUM_THREADS = 4 * Runtime.getRuntime().availableProcessors() - 1;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/long/org/apache/cassandra/locator/DynamicEndpointSnitchLongTest.java
----------------------------------------------------------------------
diff --git a/test/long/org/apache/cassandra/locator/DynamicEndpointSnitchLongTest.java b/test/long/org/apache/cassandra/locator/DynamicEndpointSnitchLongTest.java
index 2349453..35bf5b4 100644
--- a/test/long/org/apache/cassandra/locator/DynamicEndpointSnitchLongTest.java
+++ b/test/long/org/apache/cassandra/locator/DynamicEndpointSnitchLongTest.java
@@ -33,6 +33,11 @@ import org.apache.cassandra.utils.FBUtilities;
public class DynamicEndpointSnitchLongTest
{
+ static
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
@Test
public void testConcurrency() throws InterruptedException, IOException, ConfigurationException
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/long/org/apache/cassandra/streaming/LongStreamingTest.java
----------------------------------------------------------------------
diff --git a/test/long/org/apache/cassandra/streaming/LongStreamingTest.java b/test/long/org/apache/cassandra/streaming/LongStreamingTest.java
index 300be11..3d6f7ae 100644
--- a/test/long/org/apache/cassandra/streaming/LongStreamingTest.java
+++ b/test/long/org/apache/cassandra/streaming/LongStreamingTest.java
@@ -31,6 +31,7 @@ import org.junit.Test;
import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.Config;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.config.Schema;
import org.apache.cassandra.cql3.QueryProcessor;
import org.apache.cassandra.cql3.UntypedResultSet;
@@ -51,6 +52,8 @@ public class LongStreamingTest
@BeforeClass
public static void setup() throws Exception
{
+ DatabaseDescriptor.daemonInitialization();
+
SchemaLoader.cleanupAndLeaveDirs();
Keyspace.setInitialized();
StorageService.instance.initServer();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/auth/jmx/AuthorizationProxyTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/auth/jmx/AuthorizationProxyTest.java b/test/unit/org/apache/cassandra/auth/jmx/AuthorizationProxyTest.java
index f86df40..84282e0 100644
--- a/test/unit/org/apache/cassandra/auth/jmx/AuthorizationProxyTest.java
+++ b/test/unit/org/apache/cassandra/auth/jmx/AuthorizationProxyTest.java
@@ -29,9 +29,11 @@ import javax.security.auth.Subject;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.apache.cassandra.auth.*;
+import org.apache.cassandra.config.DatabaseDescriptor;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
@@ -40,6 +42,12 @@ import static org.junit.Assert.fail;
public class AuthorizationProxyTest
{
+ @BeforeClass
+ public static void setup() throws Exception
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
JMXResource osBean = JMXResource.mbean("java.lang:type=OperatingSystem");
JMXResource runtimeBean = JMXResource.mbean("java.lang:type=Runtime");
JMXResource threadingBean = JMXResource.mbean("java.lang:type=Threading");
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/batchlog/BatchlogManagerTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/batchlog/BatchlogManagerTest.java b/test/unit/org/apache/cassandra/batchlog/BatchlogManagerTest.java
index d4e621f..f192bcf 100644
--- a/test/unit/org/apache/cassandra/batchlog/BatchlogManagerTest.java
+++ b/test/unit/org/apache/cassandra/batchlog/BatchlogManagerTest.java
@@ -33,6 +33,7 @@ import org.apache.cassandra.Util.PartitionerSwitcher;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.UntypedResultSet;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.DecoratedKey;
@@ -72,6 +73,7 @@ public class BatchlogManagerTest
@BeforeClass
public static void defineSchema() throws ConfigurationException
{
+ DatabaseDescriptor.daemonInitialization();
sw = Util.switchPartitioner(Murmur3Partitioner.instance);
SchemaLoader.prepareServer();
SchemaLoader.createKeyspace(KEYSPACE1,
@@ -97,8 +99,8 @@ public class BatchlogManagerTest
InetAddress localhost = InetAddress.getByName("127.0.0.1");
metadata.updateNormalToken(Util.token("A"), localhost);
metadata.updateHostId(UUIDGen.getTimeUUID(), localhost);
- Keyspace.open(SystemKeyspace.NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).truncateBlocking();
- Keyspace.open(SystemKeyspace.NAME).getColumnFamilyStore(SystemKeyspace.LEGACY_BATCHLOG).truncateBlocking();
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).truncateBlocking();
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME).getColumnFamilyStore(SystemKeyspace.LEGACY_BATCHLOG).truncateBlocking();
}
@Test
@@ -171,12 +173,12 @@ public class BatchlogManagerTest
if (legacy)
{
- Keyspace.open(SystemKeyspace.NAME).getColumnFamilyStore(SystemKeyspace.LEGACY_BATCHLOG).forceBlockingFlush();
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME).getColumnFamilyStore(SystemKeyspace.LEGACY_BATCHLOG).forceBlockingFlush();
LegacyBatchlogMigrator.migrate();
}
// Flush the batchlog to disk (see CASSANDRA-6822).
- Keyspace.open(SystemKeyspace.NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
assertEquals(100, BatchlogManager.instance.countAllBatches() - initialAllBatches);
assertEquals(0, BatchlogManager.instance.getTotalBatchesReplayed() - initialReplayedBatches);
@@ -260,7 +262,7 @@ public class BatchlogManagerTest
}
// Flush the batchlog to disk (see CASSANDRA-6822).
- Keyspace.open(SystemKeyspace.NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
// Force batchlog replay and wait for it to complete.
BatchlogManager.instance.startBatchlogReplay().get();
@@ -341,15 +343,15 @@ public class BatchlogManagerTest
}
// Flush the batchlog to disk (see CASSANDRA-6822).
- Keyspace.open(SystemKeyspace.NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
assertEquals(1500, BatchlogManager.instance.countAllBatches() - initialAllBatches);
assertEquals(0, BatchlogManager.instance.getTotalBatchesReplayed() - initialReplayedBatches);
- UntypedResultSet result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SystemKeyspace.NAME, SystemKeyspace.LEGACY_BATCHLOG));
+ UntypedResultSet result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SchemaConstants.SYSTEM_KEYSPACE_NAME, SystemKeyspace.LEGACY_BATCHLOG));
assertNotNull(result);
assertEquals("Count in blog legacy", 0, result.one().getLong("count"));
- result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SystemKeyspace.NAME, SystemKeyspace.BATCHES));
+ result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SchemaConstants.SYSTEM_KEYSPACE_NAME, SystemKeyspace.BATCHES));
assertNotNull(result);
assertEquals("Count in blog", 1500, result.one().getLong("count"));
@@ -382,10 +384,10 @@ public class BatchlogManagerTest
assertEquals(750, result.one().getLong("count"));
// Ensure batchlog is left as expected.
- result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SystemKeyspace.NAME, SystemKeyspace.BATCHES));
+ result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SchemaConstants.SYSTEM_KEYSPACE_NAME, SystemKeyspace.BATCHES));
assertNotNull(result);
assertEquals("Count in blog after initial replay", 750, result.one().getLong("count"));
- result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SystemKeyspace.NAME, SystemKeyspace.LEGACY_BATCHLOG));
+ result = executeInternal(String.format("SELECT count(*) FROM \"%s\".\"%s\"", SchemaConstants.SYSTEM_KEYSPACE_NAME, SystemKeyspace.LEGACY_BATCHLOG));
assertNotNull(result);
assertEquals("Count in blog legacy after initial replay ", 0, result.one().getLong("count"));
}
@@ -414,7 +416,7 @@ public class BatchlogManagerTest
Assert.assertEquals(initialAllBatches + 1, BatchlogManager.instance.countAllBatches());
String query = String.format("SELECT count(*) FROM %s.%s where id = %s",
- SystemKeyspace.NAME,
+ SchemaConstants.SYSTEM_KEYSPACE_NAME,
SystemKeyspace.BATCHES,
uuid);
UntypedResultSet result = executeInternal(query);
@@ -451,7 +453,7 @@ public class BatchlogManagerTest
assertEquals(initialAllBatches, BatchlogManager.instance.countAllBatches());
String query = String.format("SELECT count(*) FROM %s.%s where id = %s",
- SystemKeyspace.NAME,
+ SchemaConstants.SYSTEM_KEYSPACE_NAME,
SystemKeyspace.BATCHES,
uuid);
UntypedResultSet result = executeInternal(query);
@@ -486,7 +488,7 @@ public class BatchlogManagerTest
assertEquals(1, BatchlogManager.instance.countAllBatches() - initialAllBatches);
// Flush the batchlog to disk (see CASSANDRA-6822).
- Keyspace.open(SystemKeyspace.NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
+ Keyspace.open(SchemaConstants.SYSTEM_KEYSPACE_NAME).getColumnFamilyStore(SystemKeyspace.BATCHES).forceBlockingFlush();
assertEquals(1, BatchlogManager.instance.countAllBatches() - initialAllBatches);
assertEquals(0, BatchlogManager.instance.getTotalBatchesReplayed() - initialReplayedBatches);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutorTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutorTest.java b/test/unit/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutorTest.java
index 5040a24..9276248 100644
--- a/test/unit/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutorTest.java
+++ b/test/unit/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutorTest.java
@@ -24,12 +24,20 @@ package org.apache.cassandra.concurrent;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.TimeUnit;
+import org.junit.BeforeClass;
import org.junit.Test;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.utils.WrappedRunnable;
public class DebuggableThreadPoolExecutorTest
{
+ @BeforeClass
+ public static void setupDD()
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
@Test
public void testSerialization()
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/config/CFMetaDataTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/config/CFMetaDataTest.java b/test/unit/org/apache/cassandra/config/CFMetaDataTest.java
index 8616987..6e2fa50 100644
--- a/test/unit/org/apache/cassandra/config/CFMetaDataTest.java
+++ b/test/unit/org/apache/cassandra/config/CFMetaDataTest.java
@@ -151,15 +151,15 @@ public class CFMetaDataTest
// Test schema conversion
Mutation rm = SchemaKeyspace.makeCreateTableMutation(keyspace, cfm, FBUtilities.timestampMicros()).build();
- PartitionUpdate cfU = rm.getPartitionUpdate(Schema.instance.getId(SchemaKeyspace.NAME, SchemaKeyspace.TABLES));
- PartitionUpdate cdU = rm.getPartitionUpdate(Schema.instance.getId(SchemaKeyspace.NAME, SchemaKeyspace.COLUMNS));
+ PartitionUpdate cfU = rm.getPartitionUpdate(Schema.instance.getId(SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.TABLES));
+ PartitionUpdate cdU = rm.getPartitionUpdate(Schema.instance.getId(SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.COLUMNS));
- UntypedResultSet.Row tableRow = QueryProcessor.resultify(String.format("SELECT * FROM %s.%s", SchemaKeyspace.NAME, SchemaKeyspace.TABLES),
+ UntypedResultSet.Row tableRow = QueryProcessor.resultify(String.format("SELECT * FROM %s.%s", SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.TABLES),
UnfilteredRowIterators.filter(cfU.unfilteredIterator(), FBUtilities.nowInSeconds()))
.one();
TableParams params = SchemaKeyspace.createTableParamsFromRow(tableRow);
- UntypedResultSet columnsRows = QueryProcessor.resultify(String.format("SELECT * FROM %s.%s", SchemaKeyspace.NAME, SchemaKeyspace.COLUMNS),
+ UntypedResultSet columnsRows = QueryProcessor.resultify(String.format("SELECT * FROM %s.%s", SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.COLUMNS),
UnfilteredRowIterators.filter(cdU.unfilteredIterator(), FBUtilities.nowInSeconds()));
Set<ColumnDefinition> columns = new HashSet<>();
for (UntypedResultSet.Row row : columnsRows)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/config/ColumnDefinitionTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/config/ColumnDefinitionTest.java b/test/unit/org/apache/cassandra/config/ColumnDefinitionTest.java
index 933d231..1e8e704 100644
--- a/test/unit/org/apache/cassandra/config/ColumnDefinitionTest.java
+++ b/test/unit/org/apache/cassandra/config/ColumnDefinitionTest.java
@@ -21,6 +21,7 @@ package org.apache.cassandra.config;
*/
import org.junit.Assert;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.apache.cassandra.db.marshal.*;
@@ -29,6 +30,12 @@ import org.apache.cassandra.utils.ByteBufferUtil;
public class ColumnDefinitionTest
{
+ @BeforeClass
+ public static void setupDD()
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
@Test
public void testSerializeDeserialize() throws Exception
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/config/DatabaseDescriptorRefTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/config/DatabaseDescriptorRefTest.java b/test/unit/org/apache/cassandra/config/DatabaseDescriptorRefTest.java
new file mode 100644
index 0000000..63c44e0
--- /dev/null
+++ b/test/unit/org/apache/cassandra/config/DatabaseDescriptorRefTest.java
@@ -0,0 +1,251 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.cassandra.config;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.PrintStream;
+import java.lang.management.ManagementFactory;
+import java.lang.management.ThreadInfo;
+import java.lang.management.ThreadMXBean;
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.junit.Test;
+
+import org.apache.cassandra.utils.Pair;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
+
+/**
+ * Verifies that {@link DatabaseDescriptor#clientInitialization()} } and a couple of <i>apply</i> methods
+ * do not somehow lazily initialize any unwanted part of Cassandra like schema, commit log or start
+ * unexpected threads.
+ *
+ * {@link DatabaseDescriptor#toolInitialization()} is tested via unit tests extending
+ * {@link org.apache.cassandra.tools.ToolsTester}.
+ */
+public class DatabaseDescriptorRefTest
+{
+ static final String[] validClasses = {
+ "org.apache.cassandra.auth.IInternodeAuthenticator",
+ "org.apache.cassandra.auth.IAuthenticator",
+ "org.apache.cassandra.auth.IAuthorizer",
+ "org.apache.cassandra.auth.IRoleManager",
+ "org.apache.cassandra.config.DatabaseDescriptor",
+ "org.apache.cassandra.config.ConfigurationLoader",
+ "org.apache.cassandra.config.Config",
+ "org.apache.cassandra.config.Config$1",
+ "org.apache.cassandra.config.Config$RequestSchedulerId",
+ "org.apache.cassandra.config.Config$CommitLogSync",
+ "org.apache.cassandra.config.Config$DiskAccessMode",
+ "org.apache.cassandra.config.Config$DiskFailurePolicy",
+ "org.apache.cassandra.config.Config$CommitFailurePolicy",
+ "org.apache.cassandra.config.Config$DiskOptimizationStrategy",
+ "org.apache.cassandra.config.Config$InternodeCompression",
+ "org.apache.cassandra.config.Config$MemtableAllocationType",
+ "org.apache.cassandra.config.Config$UserFunctionTimeoutPolicy",
+ "org.apache.cassandra.config.RequestSchedulerOptions",
+ "org.apache.cassandra.config.ParameterizedClass",
+ "org.apache.cassandra.config.EncryptionOptions",
+ "org.apache.cassandra.config.EncryptionOptions$ClientEncryptionOptions",
+ "org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions",
+ "org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions$InternodeEncryption",
+ "org.apache.cassandra.config.YamlConfigurationLoader",
+ "org.apache.cassandra.config.YamlConfigurationLoader$PropertiesChecker",
+ "org.apache.cassandra.config.YamlConfigurationLoader$PropertiesChecker$1",
+ "org.apache.cassandra.config.YamlConfigurationLoader$CustomConstructor",
+ "org.apache.cassandra.config.TransparentDataEncryptionOptions",
+ "org.apache.cassandra.dht.IPartitioner",
+ "org.apache.cassandra.exceptions.ConfigurationException",
+ "org.apache.cassandra.exceptions.RequestValidationException",
+ "org.apache.cassandra.exceptions.CassandraException",
+ "org.apache.cassandra.exceptions.TransportException",
+ "org.apache.cassandra.locator.IEndpointSnitch",
+ "org.apache.cassandra.io.FSWriteError",
+ "org.apache.cassandra.io.FSError",
+ "org.apache.cassandra.io.compress.ICompressor",
+ "org.apache.cassandra.io.compress.LZ4Compressor",
+ "org.apache.cassandra.io.sstable.metadata.MetadataType",
+ "org.apache.cassandra.io.util.BufferedDataOutputStreamPlus",
+ "org.apache.cassandra.io.util.DataOutputBuffer",
+ "org.apache.cassandra.io.util.DataOutputBufferFixed",
+ "org.apache.cassandra.io.util.DataOutputStreamPlus",
+ "org.apache.cassandra.io.util.DataOutputPlus",
+ "org.apache.cassandra.io.util.DiskOptimizationStrategy",
+ "org.apache.cassandra.locator.SimpleSeedProvider",
+ "org.apache.cassandra.locator.SeedProvider",
+ "org.apache.cassandra.scheduler.IRequestScheduler",
+ "org.apache.cassandra.security.EncryptionContext",
+ "org.apache.cassandra.service.CacheService$CacheType",
+ "org.apache.cassandra.utils.FBUtilities",
+ "org.apache.cassandra.utils.FBUtilities$1",
+ "org.apache.cassandra.utils.CloseableIterator",
+ "org.apache.cassandra.utils.Pair",
+ "org.apache.cassandra.OffsetAwareConfigurationLoader",
+ "org.apache.cassandra.ConsoleAppender",
+ "org.apache.cassandra.ConsoleAppender$1",
+ "org.apache.cassandra.LogbackStatusListener",
+ "org.apache.cassandra.LogbackStatusListener$1",
+ "org.apache.cassandra.LogbackStatusListener$2",
+ "org.apache.cassandra.TeeingAppender",
+ // generated classes
+ "org.apache.cassandra.config.ConfigBeanInfo",
+ "org.apache.cassandra.config.ConfigCustomizer",
+ "org.apache.cassandra.config.EncryptionOptionsBeanInfo",
+ "org.apache.cassandra.config.EncryptionOptionsCustomizer",
+ "org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptionsBeanInfo",
+ "org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptionsCustomizer",
+ "org.apache.cassandra.ConsoleAppenderBeanInfo",
+ "org.apache.cassandra.ConsoleAppenderCustomizer",
+ };
+
+ static final Set<String> checkedClasses = new HashSet<>(Arrays.asList(validClasses));
+
+ @Test
+ public void testDatabaseDescriptorRef() throws Throwable
+ {
+ PrintStream out = System.out;
+ PrintStream err = System.err;
+
+ ThreadMXBean threads = ManagementFactory.getThreadMXBean();
+ int threadCount = threads.getThreadCount();
+
+ ClassLoader delegate = Thread.currentThread().getContextClassLoader();
+
+ List<Pair<String, Exception>> violations = Collections.synchronizedList(new ArrayList<>());
+
+ ClassLoader cl = new ClassLoader(null)
+ {
+ final Map<String, Class<?>> classMap = new HashMap<>();
+
+ public URL getResource(String name)
+ {
+ return delegate.getResource(name);
+ }
+
+ public InputStream getResourceAsStream(String name)
+ {
+ return delegate.getResourceAsStream(name);
+ }
+
+ protected Class<?> findClass(String name) throws ClassNotFoundException
+ {
+ Class<?> cls = classMap.get(name);
+ if (cls != null)
+ return cls;
+
+ if (name.startsWith("org.apache.cassandra."))
+ {
+ // out.println(name);
+
+ if (!checkedClasses.contains(name))
+ violations.add(Pair.create(name, new Exception()));
+ }
+
+ URL url = delegate.getResource(name.replace('.', '/') + ".class");
+ if (url == null)
+ throw new ClassNotFoundException(name);
+ try (InputStream in = url.openConnection().getInputStream())
+ {
+ ByteArrayOutputStream os = new ByteArrayOutputStream();
+ int c;
+ while ((c = in.read()) != -1)
+ os.write(c);
+ byte[] data = os.toByteArray();
+ cls = defineClass(name, data, 0, data.length);
+ classMap.put(name, cls);
+ return cls;
+ }
+ catch (IOException e)
+ {
+ throw new ClassNotFoundException(name, e);
+ }
+ }
+ };
+
+ Thread.currentThread().setContextClassLoader(cl);
+
+ assertEquals("thread started", threadCount, threads.getThreadCount());
+
+ Class cDatabaseDescriptor = Class.forName("org.apache.cassandra.config.DatabaseDescriptor", true, cl);
+
+ for (String methodName : new String[]{
+ "clientInitialization",
+ "applyAddressConfig",
+ "applyThriftHSHA",
+ "applyInitialTokens",
+ // no seed provider in default configuration for clients
+ // "applySeedProvider",
+ // definitely not safe for clients - implicitly instantiates schema
+ // "applyPartitioner",
+ // definitely not safe for clients - implicitly instantiates StorageService
+ // "applySnitch",
+ "applyEncryptionContext",
+ // starts "REQUEST-SCHEDULER" thread via RoundRobinScheduler
+ // "applyRequestScheduler",
+ })
+ {
+ Method method = cDatabaseDescriptor.getDeclaredMethod(methodName);
+ method.invoke(null);
+
+ if ("clientInitialization".equals(methodName) &&
+ threadCount + 1 == threads.getThreadCount())
+ {
+ // ignore the "AsyncAppender-Worker-ASYNC" thread
+ threadCount++;
+ }
+
+ if (threadCount != threads.getThreadCount())
+ {
+ for (ThreadInfo threadInfo : threads.getThreadInfo(threads.getAllThreadIds()))
+ out.println("Thread #" + threadInfo.getThreadId() + ": " + threadInfo.getThreadName());
+ assertEquals("thread started in " + methodName, threadCount, ManagementFactory.getThreadMXBean().getThreadCount());
+ }
+
+ checkViolations(err, violations);
+ }
+ }
+
+ private void checkViolations(PrintStream err, List<Pair<String, Exception>> violations)
+ {
+ if (!violations.isEmpty())
+ {
+ for (Pair<String, Exception> violation : new ArrayList<>(violations))
+ {
+ err.println();
+ err.println();
+ err.println("VIOLATION: " + violation.left);
+ violation.right.printStackTrace(err);
+ }
+
+ fail();
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/config/DatabaseDescriptorTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/config/DatabaseDescriptorTest.java b/test/unit/org/apache/cassandra/config/DatabaseDescriptorTest.java
index 84f0235..359ef53 100644
--- a/test/unit/org/apache/cassandra/config/DatabaseDescriptorTest.java
+++ b/test/unit/org/apache/cassandra/config/DatabaseDescriptorTest.java
@@ -50,6 +50,12 @@ import static org.junit.Assert.assertTrue;
@RunWith(OrderedJUnit4ClassRunner.class)
public class DatabaseDescriptorTest
{
+ @BeforeClass
+ public static void setupDatabaseDescriptor()
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
@Test
public void testCFMetaDataSerialization() throws ConfigurationException, InvalidRequestException
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/CQLTester.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/CQLTester.java b/test/unit/org/apache/cassandra/cql3/CQLTester.java
index 310abd0..3bb753f 100644
--- a/test/unit/org/apache/cassandra/cql3/CQLTester.java
+++ b/test/unit/org/apache/cassandra/cql3/CQLTester.java
@@ -45,6 +45,7 @@ import org.apache.cassandra.concurrent.ScheduledExecutors;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.functions.FunctionName;
import org.apache.cassandra.cql3.functions.ThreadAwareSecurityManager;
import org.apache.cassandra.cql3.statements.ParsedStatement;
@@ -94,6 +95,8 @@ public abstract class CQLTester
public static final List<Integer> PROTOCOL_VERSIONS;
static
{
+ DatabaseDescriptor.daemonInitialization();
+
// The latest versions might not be supported yet by the java driver
ImmutableList.Builder<Integer> builder = ImmutableList.builder();
for (int version = Server.MIN_SUPPORTED_VERSION; version <= Server.CURRENT_VERSION; version++)
@@ -149,6 +152,8 @@ public abstract class CQLTester
if (isServerPrepared)
return;
+ DatabaseDescriptor.daemonInitialization();
+
// Cleanup first
try
{
@@ -673,7 +678,7 @@ public abstract class CQLTester
try
{
ClientState state = ClientState.forInternalCalls();
- state.setKeyspace(SystemKeyspace.NAME);
+ state.setKeyspace(SchemaConstants.SYSTEM_KEYSPACE_NAME);
QueryState queryState = new QueryState(state);
ParsedStatement.Prepared prepared = QueryProcessor.parseStatement(query, queryState);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/ColumnConditionTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/ColumnConditionTest.java b/test/unit/org/apache/cassandra/cql3/ColumnConditionTest.java
index 78e0a6c..ca0c182 100644
--- a/test/unit/org/apache/cassandra/cql3/ColumnConditionTest.java
+++ b/test/unit/org/apache/cassandra/cql3/ColumnConditionTest.java
@@ -20,10 +20,12 @@ package org.apache.cassandra.cql3;
import java.nio.ByteBuffer;
import java.util.*;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.ColumnDefinition;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.rows.BufferCell;
import org.apache.cassandra.db.rows.Cell;
import org.apache.cassandra.db.rows.CellPath;
@@ -46,6 +48,12 @@ public class ColumnConditionTest
public static final ByteBuffer A = AsciiType.instance.fromString("a");
public static final ByteBuffer B = AsciiType.instance.fromString("b");
+ @BeforeClass
+ public static void setupDD()
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
private static boolean isSatisfiedBy(ColumnCondition.Bound bound, ByteBuffer conditionValue, ByteBuffer columnValue) throws InvalidRequestException
{
Cell cell = null;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/PstmtPersistenceTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/PstmtPersistenceTest.java b/test/unit/org/apache/cassandra/cql3/PstmtPersistenceTest.java
index 6a075c9..380dbda 100644
--- a/test/unit/org/apache/cassandra/cql3/PstmtPersistenceTest.java
+++ b/test/unit/org/apache/cassandra/cql3/PstmtPersistenceTest.java
@@ -25,6 +25,7 @@ import java.util.List;
import org.junit.Test;
import junit.framework.Assert;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.statements.ParsedStatement;
import org.apache.cassandra.db.SystemKeyspace;
import org.apache.cassandra.db.marshal.Int32Type;
@@ -43,7 +44,7 @@ public class PstmtPersistenceTest extends CQLTester
// need this for pstmt execution/validation tests
requireNetwork();
- int rows = QueryProcessor.executeOnceInternal("SELECT * FROM " + SystemKeyspace.NAME + '.' + SystemKeyspace.PREPARED_STATEMENTS).size();
+ int rows = QueryProcessor.executeOnceInternal("SELECT * FROM " + SchemaConstants.SYSTEM_KEYSPACE_NAME + '.' + SystemKeyspace.PREPARED_STATEMENTS).size();
Assert.assertEquals(0, rows);
execute("CREATE KEYSPACE IF NOT EXISTS foo WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'}");
@@ -55,7 +56,7 @@ public class PstmtPersistenceTest extends CQLTester
List<MD5Digest> stmtIds = new ArrayList<>();
// #0
- stmtIds.add(QueryProcessor.prepare("SELECT * FROM " + SchemaKeyspace.NAME + '.' + SchemaKeyspace.TABLES + " WHERE keyspace_name = ?", clientState, false).statementId);
+ stmtIds.add(QueryProcessor.prepare("SELECT * FROM " + SchemaConstants.SCHEMA_KEYSPACE_NAME + '.' + SchemaKeyspace.TABLES + " WHERE keyspace_name = ?", clientState, false).statementId);
// #1
stmtIds.add(QueryProcessor.prepare("SELECT * FROM " + KEYSPACE + '.' + currentTable() + " WHERE pk = ?", clientState, false).statementId);
// #2
@@ -69,7 +70,7 @@ public class PstmtPersistenceTest extends CQLTester
Assert.assertEquals(5, stmtIds.size());
Assert.assertEquals(5, QueryProcessor.preparedStatementsCount());
- String queryAll = "SELECT * FROM " + SystemKeyspace.NAME + '.' + SystemKeyspace.PREPARED_STATEMENTS;
+ String queryAll = "SELECT * FROM " + SchemaConstants.SYSTEM_KEYSPACE_NAME + '.' + SystemKeyspace.PREPARED_STATEMENTS;
rows = QueryProcessor.executeOnceInternal(queryAll).size();
Assert.assertEquals(5, rows);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/restrictions/ClusteringColumnRestrictionsTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/restrictions/ClusteringColumnRestrictionsTest.java b/test/unit/org/apache/cassandra/cql3/restrictions/ClusteringColumnRestrictionsTest.java
index f78967d..83c00d0 100644
--- a/test/unit/org/apache/cassandra/cql3/restrictions/ClusteringColumnRestrictionsTest.java
+++ b/test/unit/org/apache/cassandra/cql3/restrictions/ClusteringColumnRestrictionsTest.java
@@ -21,10 +21,12 @@ import java.nio.ByteBuffer;
import java.util.*;
import com.google.common.collect.Iterables;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.ColumnDefinition;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.cql3.*;
import org.apache.cassandra.cql3.Term.MultiItemTerminal;
import org.apache.cassandra.cql3.statements.Bound;
@@ -41,6 +43,12 @@ import static org.junit.Assert.assertTrue;
public class ClusteringColumnRestrictionsTest
{
+ @BeforeClass
+ public static void setupDD()
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
@Test
public void testBoundsAsClusteringWithNoRestrictions()
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/validation/miscellaneous/TombstonesTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/validation/miscellaneous/TombstonesTest.java b/test/unit/org/apache/cassandra/cql3/validation/miscellaneous/TombstonesTest.java
index 5980372..72ed887 100644
--- a/test/unit/org/apache/cassandra/cql3/validation/miscellaneous/TombstonesTest.java
+++ b/test/unit/org/apache/cassandra/cql3/validation/miscellaneous/TombstonesTest.java
@@ -42,6 +42,7 @@ public class TombstonesTest extends CQLTester
@BeforeClass
public static void setUp() throws Throwable
{
+ DatabaseDescriptor.daemonInitialization();
DatabaseDescriptor.setTombstoneFailureThreshold(THRESHOLD);
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/validation/operations/AggregationTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/validation/operations/AggregationTest.java b/test/unit/org/apache/cassandra/cql3/validation/operations/AggregationTest.java
index 506d533..49ce6f3 100644
--- a/test/unit/org/apache/cassandra/cql3/validation/operations/AggregationTest.java
+++ b/test/unit/org/apache/cassandra/cql3/validation/operations/AggregationTest.java
@@ -42,12 +42,12 @@ import ch.qos.logback.classic.turbo.TurboFilter;
import com.datastax.driver.core.Session;
import com.datastax.driver.core.TupleValue;
import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.CQLTester;
import org.apache.cassandra.cql3.QueryProcessor;
import org.apache.cassandra.cql3.UntypedResultSet;
import org.apache.cassandra.cql3.UntypedResultSet.Row;
import org.apache.cassandra.cql3.functions.UDAggregate;
-import org.apache.cassandra.db.SystemKeyspace;
import org.apache.cassandra.db.marshal.AbstractType;
import org.apache.cassandra.db.marshal.TypeParser;
import org.apache.cassandra.exceptions.FunctionExecutionException;
@@ -1392,7 +1392,7 @@ public class AggregationTest extends CQLTester
"CREATE AGGREGATE " + KEYSPACE_PER_TEST + ".test_wrong_ks(int) " +
"SFUNC " + shortFunctionName(fState) + ' ' +
"STYPE " + type + ' ' +
- "FINALFUNC " + SystemKeyspace.NAME + ".min " +
+ "FINALFUNC " + SchemaConstants.SYSTEM_KEYSPACE_NAME + ".min " +
"INITCOND 1");
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/validation/operations/AlterTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/validation/operations/AlterTest.java b/test/unit/org/apache/cassandra/cql3/validation/operations/AlterTest.java
index 092efc2..c9be678 100644
--- a/test/unit/org/apache/cassandra/cql3/validation/operations/AlterTest.java
+++ b/test/unit/org/apache/cassandra/cql3/validation/operations/AlterTest.java
@@ -17,6 +17,7 @@
*/
package org.apache.cassandra.cql3.validation.operations;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.CQLTester;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Keyspace;
@@ -283,7 +284,7 @@ public class AlterTest extends CQLTester
createTable("CREATE TABLE %s (a text, b int, c int, primary key (a, b))");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -292,7 +293,7 @@ public class AlterTest extends CQLTester
execute("ALTER TABLE %s WITH compression = { 'class' : 'SnappyCompressor', 'chunk_length_in_kb' : 32 };");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -301,7 +302,7 @@ public class AlterTest extends CQLTester
execute("ALTER TABLE %s WITH compression = { 'sstable_compression' : 'LZ4Compressor', 'chunk_length_kb' : 64 };");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -310,7 +311,7 @@ public class AlterTest extends CQLTester
execute("ALTER TABLE %s WITH compression = { 'sstable_compression' : '', 'chunk_length_kb' : 32 };");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -320,7 +321,7 @@ public class AlterTest extends CQLTester
execute("ALTER TABLE %s WITH compression = { 'enabled' : 'false'};");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/validation/operations/CreateTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/validation/operations/CreateTest.java b/test/unit/org/apache/cassandra/cql3/validation/operations/CreateTest.java
index 8f92403..da0824f 100644
--- a/test/unit/org/apache/cassandra/cql3/validation/operations/CreateTest.java
+++ b/test/unit/org/apache/cassandra/cql3/validation/operations/CreateTest.java
@@ -25,6 +25,7 @@ import org.junit.Test;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.CQLTester;
import org.apache.cassandra.db.Mutation;
import org.apache.cassandra.db.partitions.Partition;
@@ -510,7 +511,7 @@ public class CreateTest extends CQLTester
createTable("CREATE TABLE %s (a text, b int, c int, primary key (a, b))");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -520,7 +521,7 @@ public class CreateTest extends CQLTester
+ " WITH compression = { 'class' : 'SnappyCompressor', 'chunk_length_in_kb' : 32 };");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -530,7 +531,7 @@ public class CreateTest extends CQLTester
+ " WITH compression = { 'class' : 'SnappyCompressor', 'chunk_length_in_kb' : 32, 'enabled' : true };");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -540,7 +541,7 @@ public class CreateTest extends CQLTester
+ " WITH compression = { 'sstable_compression' : 'SnappyCompressor', 'chunk_length_kb' : 32 };");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -550,7 +551,7 @@ public class CreateTest extends CQLTester
+ " WITH compression = { 'sstable_compression' : '', 'chunk_length_kb' : 32 };");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
@@ -560,7 +561,7 @@ public class CreateTest extends CQLTester
+ " WITH compression = { 'enabled' : 'false'};");
assertRows(execute(format("SELECT compression FROM %s.%s WHERE keyspace_name = ? and table_name = ?;",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TABLES),
KEYSPACE,
currentTable()),
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/cql3/validation/operations/InsertUpdateIfConditionTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/cql3/validation/operations/InsertUpdateIfConditionTest.java b/test/unit/org/apache/cassandra/cql3/validation/operations/InsertUpdateIfConditionTest.java
index 9bb2468..8a61b68 100644
--- a/test/unit/org/apache/cassandra/cql3/validation/operations/InsertUpdateIfConditionTest.java
+++ b/test/unit/org/apache/cassandra/cql3/validation/operations/InsertUpdateIfConditionTest.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.cql3.validation.operations;
import org.junit.Test;
+import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.cql3.CQLTester;
import org.apache.cassandra.exceptions.InvalidRequestException;
import org.apache.cassandra.exceptions.SyntaxException;
@@ -1283,7 +1284,7 @@ public class InsertUpdateIfConditionTest extends CQLTester
// create and confirm
schemaChange("CREATE KEYSPACE IF NOT EXISTS " + keyspace + " WITH replication = { 'class':'SimpleStrategy', 'replication_factor':1} and durable_writes = true ");
assertRows(execute(format("select durable_writes from %s.%s where keyspace_name = ?",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.KEYSPACES),
keyspace),
row(true));
@@ -1292,7 +1293,7 @@ public class InsertUpdateIfConditionTest extends CQLTester
schemaChange("CREATE KEYSPACE IF NOT EXISTS " + keyspace + " WITH replication = {'class':'SimpleStrategy', 'replication_factor':1} and durable_writes = false ");
assertRows(execute(format("select durable_writes from %s.%s where keyspace_name = ?",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.KEYSPACES),
keyspace),
row(true));
@@ -1300,7 +1301,7 @@ public class InsertUpdateIfConditionTest extends CQLTester
// drop and confirm
schemaChange("DROP KEYSPACE IF EXISTS " + keyspace);
- assertEmpty(execute(format("select * from %s.%s where keyspace_name = ?", SchemaKeyspace.NAME, SchemaKeyspace.KEYSPACES),
+ assertEmpty(execute(format("select * from %s.%s where keyspace_name = ?", SchemaConstants.SCHEMA_KEYSPACE_NAME, SchemaKeyspace.KEYSPACES),
keyspace));
}
@@ -1377,7 +1378,7 @@ public class InsertUpdateIfConditionTest extends CQLTester
// create and confirm
execute("CREATE TYPE IF NOT EXISTS mytype (somefield int)");
assertRows(execute(format("SELECT type_name from %s.%s where keyspace_name = ? and type_name = ?",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TYPES),
KEYSPACE,
"mytype"),
@@ -1390,7 +1391,7 @@ public class InsertUpdateIfConditionTest extends CQLTester
// drop and confirm
execute("DROP TYPE IF EXISTS mytype");
assertEmpty(execute(format("SELECT type_name from %s.%s where keyspace_name = ? and type_name = ?",
- SchemaKeyspace.NAME,
+ SchemaConstants.SCHEMA_KEYSPACE_NAME,
SchemaKeyspace.TYPES),
KEYSPACE,
"mytype"));
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/db/CellTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/CellTest.java b/test/unit/org/apache/cassandra/db/CellTest.java
index 1249989..8fb8adb 100644
--- a/test/unit/org/apache/cassandra/db/CellTest.java
+++ b/test/unit/org/apache/cassandra/db/CellTest.java
@@ -29,6 +29,7 @@ import org.junit.Test;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.ColumnDefinition;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.cql3.ColumnIdentifier;
import org.apache.cassandra.db.marshal.*;
import org.apache.cassandra.db.rows.*;
@@ -41,6 +42,11 @@ import org.apache.cassandra.utils.FBUtilities;
public class CellTest
{
+ static
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
+
private static final String KEYSPACE1 = "CellTest";
private static final String CF_STANDARD1 = "Standard1";
private static final String CF_COLLECTION = "Collection1";
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/db/ColumnsTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/ColumnsTest.java b/test/unit/org/apache/cassandra/db/ColumnsTest.java
index 4e3df80..d64a5bd 100644
--- a/test/unit/org/apache/cassandra/db/ColumnsTest.java
+++ b/test/unit/org/apache/cassandra/db/ColumnsTest.java
@@ -33,6 +33,7 @@ import junit.framework.Assert;
import org.apache.cassandra.MockSchema;
import org.apache.cassandra.config.CFMetaData;
import org.apache.cassandra.config.ColumnDefinition;
+import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.marshal.SetType;
import org.apache.cassandra.db.marshal.UTF8Type;
import org.apache.cassandra.io.util.DataInputBuffer;
@@ -43,6 +44,10 @@ import static org.apache.cassandra.utils.ByteBufferUtil.bytes;
public class ColumnsTest
{
+ static
+ {
+ DatabaseDescriptor.daemonInitialization();
+ }
private static final CFMetaData cfMetaData = MockSchema.newCFS().metadata;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/9797511c/test/unit/org/apache/cassandra/db/DirectoriesTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/DirectoriesTest.java b/test/unit/org/apache/cassandra/db/DirectoriesTest.java
index 9a1c0bd..5841c36 100644
--- a/test/unit/org/apache/cassandra/db/DirectoriesTest.java
+++ b/test/unit/org/apache/cassandra/db/DirectoriesTest.java
@@ -67,7 +67,10 @@ public class DirectoriesTest
@BeforeClass
public static void beforeClass() throws IOException
{
+ DatabaseDescriptor.daemonInitialization();
+
FileUtils.setFSErrorHandler(new DefaultFSErrorHandler());
+
for (String table : TABLES)
{
UUID tableID = CFMetaData.generateLegacyCfId(KS, table);