Merge branch 'cassandra-2.1' into cassandra-2.2

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

Branch: refs/heads/trunk
Commit: 84d4488537605a86373325f86bbc4cd358921223
Parents: d84b42b ecd66de
Author: Aleksey Yeschenko <alek...@apache.org>
Authored: Thu Nov 12 17:58:38 2015 +0000
Committer: Aleksey Yeschenko <alek...@apache.org>
Committed: Thu Nov 12 17:58:38 2015 +0000

----------------------------------------------------------------------
 CHANGES.txt                                     |  1 +
 .../cassandra/service/StorageService.java       |  6 ++++
 .../cassandra/service/StorageServiceMBean.java  |  5 +++
 .../org/apache/cassandra/tools/NodeProbe.java   | 12 +++++++
 .../org/apache/cassandra/tools/NodeTool.java    |  3 +-
 .../tools/nodetool/RefreshSizeEstimates.java    | 33 ++++++++++++++++++++
 6 files changed, 59 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/84d44885/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 2cfcb55,2eeda94..9c834f3
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,15 -1,5 +1,16 @@@
 -2.1.12
 +2.2.4
 + * (Hadoop) fix splits calculation (CASSANDRA-10640)
 + * (Hadoop) ensure that Cluster instances are always closed (CASSANDRA-10058)
 + * (cqlsh) show partial trace if incomplete after max_trace_wait 
(CASSANDRA-7645)
 + * Use most up-to-date version of schema for system tables (CASSANDRA-10652)
 + * Deprecate memory_allocator in cassandra.yaml (CASSANDRA-10581,10628)
 + * Expose phi values from failure detector via JMX and tweak debug
 +   and trace logging (CASSANDRA-9526)
 + * Fix RangeNamesQueryPager (CASSANDRA-10509)
 + * Deprecate Pig support (CASSANDRA-10542)
 + * Reduce contention getting instances of CompositeType (CASSANDRA-10433)
 +Merged from 2.1:
+  * Add a nodetool command to refresh size_estimates (CASSANDRA-9579)
   * Shutdown compaction in drain to prevent leak (CASSANDRA-10079)
   * Invalidate cache after stream receive task is completed (CASSANDRA-10341)
   * Reject counter writes in CQLSSTableWriter (CASSANDRA-10258)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/84d44885/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/84d44885/src/java/org/apache/cassandra/service/StorageServiceMBean.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/StorageServiceMBean.java
index 2c92d43,1351fea..00060ae
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@@ -239,9 -248,14 +239,14 @@@ public interface StorageServiceMBean ex
      public long trueSnapshotsSize();
  
      /**
+      * Forces refresh of values stored in system.size_estimates of all column 
families.
+      */
+     public void refreshSizeEstimates() throws ExecutionException;
+ 
+     /**
       * Forces major compaction of a single keyspace
       */
 -    public void forceKeyspaceCompaction(String keyspaceName, String... 
columnFamilies) throws IOException, ExecutionException, InterruptedException;
 +    public void forceKeyspaceCompaction(boolean splitOutput, String 
keyspaceName, String... columnFamilies) throws IOException, ExecutionException, 
InterruptedException;
  
      /**
       * Trigger a cleanup of keys on a single keyspace

http://git-wip-us.apache.org/repos/asf/cassandra/blob/84d44885/src/java/org/apache/cassandra/tools/NodeProbe.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/84d44885/src/java/org/apache/cassandra/tools/NodeTool.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/NodeTool.java
index 175b325,1d4a420..fcb6ed0
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@@ -129,23 -187,14 +129,24 @@@ public class NodeToo
                  TpStats.class,
                  TopPartitions.class,
                  SetLoggingLevel.class,
 -                GetLoggingLevels.class
 +                GetLoggingLevels.class,
-                 FailureDetectorInfo.class
++                FailureDetectorInfo.class,
++                RefreshSizeEstimates.class
          );
  
 -        Cli<Runnable> parser = Cli.<Runnable>builder("nodetool")
 -                .withDescription("Manage your Cassandra cluster")
 +        Cli.CliBuilder<Runnable> builder = Cli.builder("nodetool");
 +
 +        builder.withDescription("Manage your Cassandra cluster")
 +                 .withDefaultCommand(Help.class)
 +                 .withCommands(commands);
 +
 +        // bootstrap commands
 +        builder.withGroup("bootstrap")
 +                .withDescription("Monitor/manage node's bootstrap process")
                  .withDefaultCommand(Help.class)
 -                .withCommands(commands)
 -                .build();
 +                .withCommand(BootstrapResume.class);
 +
 +        Cli<Runnable> parser = builder.build();
  
          int status = 0;
          try

http://git-wip-us.apache.org/repos/asf/cassandra/blob/84d44885/src/java/org/apache/cassandra/tools/nodetool/RefreshSizeEstimates.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/nodetool/RefreshSizeEstimates.java
index 0000000,0000000..870c7b4
new file mode 100644
--- /dev/null
+++ b/src/java/org/apache/cassandra/tools/nodetool/RefreshSizeEstimates.java
@@@ -1,0 -1,0 +1,33 @@@
++/*
++ * 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.tools.nodetool;
++
++import io.airlift.command.Command;
++import org.apache.cassandra.tools.NodeProbe;
++import org.apache.cassandra.tools.NodeTool;
++
++@Command(name = "refreshsizeestimates", description = "Refresh 
system.size_estimates")
++public class RefreshSizeEstimates extends NodeTool.NodeToolCmd
++{
++    @Override
++    public void execute(NodeProbe probe)
++    {
++        probe.refreshSizeEstimates();
++    }
++}

Reply via email to