You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2014/01/24 00:20:24 UTC

[1/5] git commit: improve logging of settings at startup patch by Sean Bridges and Lyuben Todorov for CASSANDRA-6456

Updated Branches:
  refs/heads/cassandra-1.2 0eac40835 -> 9771cea21
  refs/heads/cassandra-2.0 f7f9de52f -> 7ae617845
  refs/heads/trunk 4c8a8812c -> 5b995cd78


improve logging of settings at startup
patch by Sean Bridges and Lyuben Todorov for CASSANDRA-6456


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3834a859
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3834a859
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3834a859

Branch: refs/heads/trunk
Commit: 3834a8596604f3e23ac863e8a6e16b645f9324fa
Parents: 7822733
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Jan 23 19:54:19 2014 +0900
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Jan 23 19:54:19 2014 +0900

----------------------------------------------------------------------
 .../cassandra/config/DatabaseDescriptor.java    | 10 ------
 .../config/YamlConfigurationLoader.java         | 34 +++++++++++++++-----
 .../apache/cassandra/service/CacheService.java  |  8 -----
 .../cassandra/service/CassandraDaemon.java      |  9 ++++++
 .../cassandra/thrift/TServerCustomFactory.java  |  1 -
 .../apache/cassandra/thrift/ThriftServer.java   |  1 -
 6 files changed, 35 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3834a859/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index cef5e14..4b627c8 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -140,9 +140,6 @@ public class DatabaseDescriptor
     {
         conf = config;
 
-        logger.info("Data files directories: {}", Arrays.toString(conf.data_file_directories));
-        logger.info("Commit log directory: {}", conf.commitlog_directory);
-
         if (conf.commitlog_sync == null)
         {
             throw new ConfigurationException("Missing required directive CommitLogSync");
@@ -195,8 +192,6 @@ public class DatabaseDescriptor
             logger.info("DiskAccessMode is {}, indexAccessMode is {}", conf.disk_access_mode, indexAccessMode);
         }
 
-        logger.info("disk_failure_policy is {}", conf.disk_failure_policy);
-
         /* Authentication and authorization backend, implementing IAuthenticator and IAuthorizer */
         if (conf.authenticator != null)
             authenticator = FBUtilities.newAuthenticator(conf.authenticator);
@@ -393,11 +388,6 @@ public class DatabaseDescriptor
             requestSchedulerId = RequestSchedulerId.keyspace;
         }
 
-        if (logger.isDebugEnabled() && conf.auto_bootstrap != null)
-        {
-            logger.debug("setting auto_bootstrap to {}", conf.auto_bootstrap);
-        }
-
         if (conf.in_memory_compaction_limit_in_mb != null && conf.in_memory_compaction_limit_in_mb <= 0)
         {
             throw new ConfigurationException("in_memory_compaction_limit_in_mb must be a positive integer");

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3834a859/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java b/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
index d8a138c..aefc431 100644
--- a/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
+++ b/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
@@ -18,16 +18,21 @@
 package org.apache.cassandra.config;
 
 import java.beans.IntrospectionException;
-import java.io.IOException;
+import java.io.ByteArrayInputStream;
 import java.io.InputStream;
+import java.io.IOException;
 import java.net.URL;
 import java.util.HashSet;
+import java.util.Map;
 import java.util.Set;
+import java.util.TreeMap;
 
+import com.google.common.base.Joiner;
+import com.google.common.io.ByteStreams;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+
 import org.apache.cassandra.exceptions.ConfigurationException;
-import org.apache.cassandra.io.util.FileUtils;
 import org.yaml.snakeyaml.TypeDescription;
 import org.yaml.snakeyaml.Yaml;
 import org.yaml.snakeyaml.error.YAMLException;
@@ -69,20 +74,23 @@ public class YamlConfigurationLoader implements ConfigurationLoader
 
     public Config loadConfig() throws ConfigurationException
     {
-        InputStream input = null;
         try
         {
             URL url = getStorageConfigURL();
             logger.info("Loading settings from {}", url);
-            try
+            byte[] configBytes;
+            try (InputStream is = url.openStream())
             {
-                input = url.openStream();
+                configBytes = ByteStreams.toByteArray(is);
             }
             catch (IOException e)
             {
                 // getStorageConfigURL should have ruled this out
                 throw new AssertionError(e);
             }
+            
+            logConfig(configBytes);
+            
             org.yaml.snakeyaml.constructor.Constructor constructor = new org.yaml.snakeyaml.constructor.Constructor(Config.class);
             TypeDescription seedDesc = new TypeDescription(SeedProviderDef.class);
             seedDesc.putMapPropertyType("parameters", String.class, String.class);
@@ -90,7 +98,7 @@ public class YamlConfigurationLoader implements ConfigurationLoader
             MissingPropertiesChecker propertiesChecker = new MissingPropertiesChecker();
             constructor.setPropertyUtils(propertiesChecker);
             Yaml yaml = new Yaml(constructor);
-            Config result = yaml.loadAs(input, Config.class);
+            Config result = yaml.loadAs(new ByteArrayInputStream(configBytes), Config.class);
             propertiesChecker.check();
             return result;
         }
@@ -98,10 +106,20 @@ public class YamlConfigurationLoader implements ConfigurationLoader
         {
             throw new ConfigurationException("Invalid yaml", e);
         }
-        finally
+    }
+
+    private void logConfig(byte[] configBytes)
+    {
+        Map<Object, Object> configMap = new TreeMap<>((Map<?, ?>) new Yaml().load(new ByteArrayInputStream(configBytes)));
+        // these keys contain passwords, don't log them
+        for (String sensitiveKey : new String[] { "client_encryption_options", "server_encryption_options" })
         {
-            FileUtils.closeQuietly(input);
+            if (configMap.containsKey(sensitiveKey))
+            {
+                configMap.put(sensitiveKey, "<REDACTED>");
+            }
         }
+        logger.info("Node configuration:[" + Joiner.on("; ").join(configMap.entrySet()) + "]");
     }
     
     private static class MissingPropertiesChecker extends PropertyUtils 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3834a859/src/java/org/apache/cassandra/service/CacheService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/CacheService.java b/src/java/org/apache/cassandra/service/CacheService.java
index db024de..59fb59e 100644
--- a/src/java/org/apache/cassandra/service/CacheService.java
+++ b/src/java/org/apache/cassandra/service/CacheService.java
@@ -116,10 +116,6 @@ public class CacheService implements CacheServiceMBean
 
         int keyCacheKeysToSave = DatabaseDescriptor.getKeyCacheKeysToSave();
 
-        logger.info("Scheduling key cache save to each {} seconds (going to save {} keys).",
-                DatabaseDescriptor.getKeyCacheSavePeriod(),
-                    keyCacheKeysToSave == Integer.MAX_VALUE ? "all" : keyCacheKeysToSave);
-
         keyCache.scheduleSaving(DatabaseDescriptor.getKeyCacheSavePeriod(), keyCacheKeysToSave);
 
         return keyCache;
@@ -140,10 +136,6 @@ public class CacheService implements CacheServiceMBean
 
         int rowCacheKeysToSave = DatabaseDescriptor.getRowCacheKeysToSave();
 
-        logger.info("Scheduling row cache save to each {} seconds (going to save {} keys).",
-                DatabaseDescriptor.getRowCacheSavePeriod(),
-                    rowCacheKeysToSave == Integer.MAX_VALUE ? "all" : rowCacheKeysToSave);
-
         rowCache.scheduleSaving(DatabaseDescriptor.getRowCacheSavePeriod(), rowCacheKeysToSave);
 
         return rowCache;

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3834a859/src/java/org/apache/cassandra/service/CassandraDaemon.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/CassandraDaemon.java b/src/java/org/apache/cassandra/service/CassandraDaemon.java
index a5c7df5..0cadf96 100644
--- a/src/java/org/apache/cassandra/service/CassandraDaemon.java
+++ b/src/java/org/apache/cassandra/service/CassandraDaemon.java
@@ -21,6 +21,7 @@ import java.io.File;
 import java.io.IOException;
 import java.lang.management.ManagementFactory;
 import java.net.InetAddress;
+import java.net.UnknownHostException;
 import java.util.Arrays;
 import java.util.Map;
 import java.util.UUID;
@@ -94,6 +95,14 @@ public class CassandraDaemon
      */
     protected void setup()
     {
+        try 
+        {
+            logger.info("Hostname: {}", InetAddress.getLocalHost().getHostName());
+        }
+        catch (UnknownHostException e1)
+        {
+            logger.info("Could not resolve local host");
+        }
         // log warnings for different kinds of sub-optimal JVMs.  tldr use 64-bit Oracle >= 1.6u32
         if (!System.getProperty("os.arch").contains("64"))
             logger.info("32bit JVM detected.  It is recommended to run Cassandra on a 64bit JVM for better performance.");

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3834a859/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 3c21d3a..3c5b967 100644
--- a/src/java/org/apache/cassandra/thrift/TServerCustomFactory.java
+++ b/src/java/org/apache/cassandra/thrift/TServerCustomFactory.java
@@ -44,7 +44,6 @@ public class TServerCustomFactory implements TServerFactory
         if (ThriftServer.SYNC.equalsIgnoreCase(serverType))
         {
             server = new CustomTThreadPoolServer.Factory().buildTServer(args);
-            logger.info(String.format("Using synchronous/threadpool thrift server on %s : %s", args.addr.getHostName(), args.addr.getPort()));
         }
         else if(ThriftServer.ASYNC.equalsIgnoreCase(serverType))
         {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3834a859/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 593fcf0..d233850 100644
--- a/src/java/org/apache/cassandra/thrift/ThriftServer.java
+++ b/src/java/org/apache/cassandra/thrift/ThriftServer.java
@@ -98,7 +98,6 @@ public class ThriftServer implements CassandraDaemon.Server
     protected TTransportFactory getTransportFactory()
     {
         int tFramedTransportSize = DatabaseDescriptor.getThriftFramedTransportSize();
-        logger.info("Using TFramedTransport with a max frame size of {} bytes.", tFramedTransportSize);
         return new TFramedTransport.Factory(tFramedTransportSize);
     }
 


[2/5] git commit: include cause of configuration exception that Shouldn't Happen

Posted by jb...@apache.org.
include cause of configuration exception that Shouldn't Happen


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9771cea2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9771cea2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9771cea2

Branch: refs/heads/cassandra-2.0
Commit: 9771cea2186977adf406ad35cb54a10feae69591
Parents: 0eac408
Author: Jonathan Ellis <jb...@apache.org>
Authored: Fri Jan 24 08:19:49 2014 +0900
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Fri Jan 24 08:19:49 2014 +0900

----------------------------------------------------------------------
 .../org/apache/cassandra/locator/AbstractReplicationStrategy.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9771cea2/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java b/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
index e4dd422..d2f6085 100644
--- a/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
+++ b/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
@@ -271,7 +271,7 @@ public abstract class AbstractReplicationStrategy
         catch (ConfigurationException e)
         {
             // If that happens at this point, there is nothing we can do about it.
-            throw new RuntimeException();
+            throw new RuntimeException(e);
         }
     }
 


[3/5] git commit: include cause of configuration exception that Shouldn't Happen

Posted by jb...@apache.org.
include cause of configuration exception that Shouldn't Happen


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9771cea2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9771cea2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9771cea2

Branch: refs/heads/cassandra-1.2
Commit: 9771cea2186977adf406ad35cb54a10feae69591
Parents: 0eac408
Author: Jonathan Ellis <jb...@apache.org>
Authored: Fri Jan 24 08:19:49 2014 +0900
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Fri Jan 24 08:19:49 2014 +0900

----------------------------------------------------------------------
 .../org/apache/cassandra/locator/AbstractReplicationStrategy.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9771cea2/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java b/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
index e4dd422..d2f6085 100644
--- a/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
+++ b/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
@@ -271,7 +271,7 @@ public abstract class AbstractReplicationStrategy
         catch (ConfigurationException e)
         {
             // If that happens at this point, there is nothing we can do about it.
-            throw new RuntimeException();
+            throw new RuntimeException(e);
         }
     }
 


[4/5] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

Posted by jb...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7ae61784
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7ae61784
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7ae61784

Branch: refs/heads/cassandra-2.0
Commit: 7ae617845609153cdb28a25ed7c725d03724d00c
Parents: f7f9de5 9771cea
Author: Jonathan Ellis <jb...@apache.org>
Authored: Fri Jan 24 08:19:57 2014 +0900
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Fri Jan 24 08:19:57 2014 +0900

----------------------------------------------------------------------
 .../org/apache/cassandra/locator/AbstractReplicationStrategy.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7ae61784/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
----------------------------------------------------------------------


[5/5] git commit: Merge remote-tracking branch 'origin/trunk' into trunk

Posted by jb...@apache.org.
Merge remote-tracking branch 'origin/trunk' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5b995cd7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5b995cd7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5b995cd7

Branch: refs/heads/trunk
Commit: 5b995cd78c35a75279cd069ae65b1233df34bbbe
Parents: 3834a85 4c8a881
Author: Jonathan Ellis <jb...@apache.org>
Authored: Fri Jan 24 08:20:15 2014 +0900
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Fri Jan 24 08:20:15 2014 +0900

----------------------------------------------------------------------
 CHANGES.txt                                     |  1 +
 NEWS.txt                                        | 16 +++--------
 conf/cassandra.yaml                             |  2 +-
 .../apache/cassandra/gms/FailureDetector.java   | 30 ++++++++++++++++++--
 4 files changed, 34 insertions(+), 15 deletions(-)
----------------------------------------------------------------------