You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by yu...@apache.org on 2016/05/23 15:01:24 UTC

[01/15] cassandra git commit: Add message dropped tasks to nodetool netstats

Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 00f25401c -> 129b1193e
  refs/heads/cassandra-2.2 2837ec65b -> e0c6a9eca
  refs/heads/cassandra-3.0 6663c5ff8 -> 4cdce5645
  refs/heads/cassandra-3.7 f294750f5 -> bdb942173
  refs/heads/trunk 74f41c9cc -> 400ad9468


Add message dropped tasks to nodetool netstats

patch by Jeremiah Jordan; reviewed by yukim for CASSANDRA-11855


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

Branch: refs/heads/cassandra-2.1
Commit: 129b1193e26c015fd06ed652eb62dcd509b6bc50
Parents: 00f2540
Author: Jeremiah D Jordan <je...@datastax.com>
Authored: Fri May 20 11:44:44 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:27:13 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                       |  1 +
 src/java/org/apache/cassandra/tools/NodeTool.java | 11 ++++++++---
 2 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3972248..7a0ccba 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.1.15
+ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
  * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
    expired tombstone (CASSANDRA-11834)
  * Fix paging on DISTINCT queries repeats result when first row in partition changes 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/src/java/org/apache/cassandra/tools/NodeTool.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeTool.java b/src/java/org/apache/cassandra/tools/NodeTool.java
index 1de2e20..5af8240 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -708,10 +708,12 @@ public class NodeTool
                 System.out.printf("%-25s", "Pool Name");
                 System.out.printf("%10s", "Active");
                 System.out.printf("%10s", "Pending");
-                System.out.printf("%15s%n", "Completed");
+                System.out.printf("%15s", "Completed");
+                System.out.printf("%10s%n", "Dropped");
 
                 int pending;
                 long completed;
+                long dropped;
 
                 pending = 0;
                 for (int n : ms.getCommandPendingTasks().values())
@@ -719,7 +721,10 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getCommandCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Commands", "n/a", pending, completed);
+                dropped = 0;
+                for (long n : ms.getCommandDroppedTasks().values())
+                    dropped += n;
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Commands", "n/a", pending, completed, dropped);
 
                 pending = 0;
                 for (int n : ms.getResponsePendingTasks().values())
@@ -727,7 +732,7 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getResponseCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Responses", "n/a", pending, completed);
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Responses", "n/a", pending, completed, "n/a");
             }
         }
     }


[10/15] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0

Posted by yu...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0


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

Branch: refs/heads/trunk
Commit: 4cdce5645080c288bcee64a79d68a840e0299cba
Parents: 6663c5f e0c6a9e
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:57:14 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:57:14 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4cdce564/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 27398db,795e823..608d6c9
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,35 -1,7 +1,36 @@@
 -2.2.7
 - * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
 +3.0.7
 + * Use CFS.initialDirectories when clearing snapshots (CASSANDRA-11705)
 + * Allow compaction strategies to disable early open (CASSANDRA-11754)
 + * Refactor Materialized View code (CASSANDRA-11475)
 + * Update Java Driver (CASSANDRA-11615)
 +Merged from 2.2:
++ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 - * Prohibit Reverse Counter type as part of the PK (CASSANDRA-9395)
 + * Prohibit Reversed Counter type as part of the PK (CASSANDRA-9395)
 +
 +
 +3.0.6
 + * Disallow creating view with a static column (CASSANDRA-11602)
 + * Reduce the amount of object allocations caused by the getFunctions methods (CASSANDRA-11593)
 + * Potential error replaying commitlog with smallint/tinyint/date/time types (CASSANDRA-11618)
 + * Fix queries with filtering on counter columns (CASSANDRA-11629)
 + * Improve tombstone printing in sstabledump (CASSANDRA-11655)
 + * Fix paging for range queries where all clustering columns are specified (CASSANDRA-11669)
 + * Don't require HEAP_NEW_SIZE to be set when using G1 (CASSANDRA-11600)
 + * Fix sstabledump not showing cells after tombstone marker (CASSANDRA-11654)
 + * Ignore all LocalStrategy keyspaces for streaming and other related
 +   operations (CASSANDRA-11627)
 + * Ensure columnfilter covers indexed columns for thrift 2i queries (CASSANDRA-11523)
 + * Only open one sstable scanner per sstable (CASSANDRA-11412)
 + * Option to specify ProtocolVersion in cassandra-stress (CASSANDRA-11410)
 + * ArithmeticException in avgFunctionForDecimal (CASSANDRA-11485)
 + * LogAwareFileLister should only use OLD sstable files in current folder to determine disk consistency (CASSANDRA-11470)
 + * Notify indexers of expired rows during compaction (CASSANDRA-11329)
 + * Properly respond with ProtocolError when a v1/v2 native protocol
 +   header is received (CASSANDRA-11464)
 + * Validate that num_tokens and initial_token are consistent with one another (CASSANDRA-10120)
 +Merged from 2.2:
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
   * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
   * Exit JVM if JMX server fails to startup (CASSANDRA-11540)
   * Produce a heap dump when exiting on OOM (CASSANDRA-9861)


[08/15] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2

Posted by yu...@apache.org.
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/e0c6a9ec
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e0c6a9ec
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e0c6a9ec

Branch: refs/heads/cassandra-3.0
Commit: e0c6a9eca074f1be00ef60131f4db40cc4ea5307
Parents: 2837ec6 129b119
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:52:45 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:52:45 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 103d057,7a0ccba..795e823
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,24 -1,9 +1,25 @@@
 -2.1.15
 +2.2.7
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
 + * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 + * Prohibit Reverse Counter type as part of the PK (CASSANDRA-9395)
 + * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
 + * Exit JVM if JMX server fails to startup (CASSANDRA-11540)
 + * Produce a heap dump when exiting on OOM (CASSANDRA-9861)
 + * Avoid read repairing purgeable tombstones on range slices (CASSANDRA-11427)
 + * Restore ability to filter on clustering columns when using a 2i (CASSANDRA-11510)
 + * JSON datetime formatting needs timezone (CASSANDRA-11137)
 + * Fix is_dense recalculation for Thrift-updated tables (CASSANDRA-11502)
 + * Remove unnescessary file existence check during anticompaction (CASSANDRA-11660)
 + * Add missing files to debian packages (CASSANDRA-11642)
 + * Avoid calling Iterables::concat in loops during ModificationStatement::getFunctions (CASSANDRA-11621)
 + * cqlsh: COPY FROM should use regular inserts for single statement batches and
 +   report errors correctly if workers processes crash on initialization (CASSANDRA-11474)
 + * Always close cluster with connection in CqlRecordWriter (CASSANDRA-11553)
 + * Fix slice queries on ordered COMPACT tables (CASSANDRA-10988)
 +Merged from 2.1:
+  * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
     expired tombstone (CASSANDRA-11834)
 - * Fix paging on DISTINCT queries repeats result when first row in partition changes 
 -   (CASSANDRA-11679)
   * Add option to disable use of severity in DynamicEndpointSnitch (CASSANDRA-11737)
   * cqlsh COPY FROM fails for null values with non-prepared statements (CASSANDRA-11631)
   * Make cython optional in pylib/setup.py (CASSANDRA-11630)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/nodetool/NetStats.java
index 3e06ca0,0000000..5b84dff
mode 100644,000000..100644
--- a/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
+++ b/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
@@@ -1,123 -1,0 +1,134 @@@
 +/*
 + * 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 io.airlift.command.Option;
 +
 +import java.util.Set;
 +
 +import org.apache.cassandra.io.util.FileUtils;
 +import org.apache.cassandra.net.MessagingServiceMBean;
 +import org.apache.cassandra.streaming.ProgressInfo;
 +import org.apache.cassandra.streaming.SessionInfo;
 +import org.apache.cassandra.streaming.StreamState;
 +import org.apache.cassandra.tools.NodeProbe;
 +import org.apache.cassandra.tools.NodeTool.NodeToolCmd;
 +
 +@Command(name = "netstats", description = "Print network information on provided host (connecting node by default)")
 +public class NetStats extends NodeToolCmd
 +{
 +    @Option(title = "human_readable",
 +            name = {"-H", "--human-readable"},
 +            description = "Display bytes in human readable form, i.e. KB, MB, GB, TB")
 +    private boolean humanReadable = false;
 +
 +    @Override
 +    public void execute(NodeProbe probe)
 +    {
 +        System.out.printf("Mode: %s%n", probe.getOperationMode());
 +        Set<StreamState> statuses = probe.getStreamStatus();
 +        if (statuses.isEmpty())
 +            System.out.println("Not sending any streams.");
 +        for (StreamState status : statuses)
 +        {
 +            System.out.printf("%s %s%n", status.description, status.planId.toString());
 +            for (SessionInfo info : status.sessions)
 +            {
 +                System.out.printf("    %s", info.peer.toString());
 +                // print private IP when it is used
 +                if (!info.peer.equals(info.connecting))
 +                {
 +                    System.out.printf(" (using %s)", info.connecting.toString());
 +                }
 +                System.out.printf("%n");
 +                if (!info.receivingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Receiving %d files, %s total. Already received %d files, %s total%n", info.getTotalFilesToReceive(), FileUtils.stringifyFileSize(info.getTotalSizeToReceive()), info.getTotalFilesReceived(), FileUtils.stringifyFileSize(info.getTotalSizeReceived()));
 +                    else
 +                        System.out.printf("        Receiving %d files, %d bytes total. Already received %d files, %d bytes total%n", info.getTotalFilesToReceive(), info.getTotalSizeToReceive(), info.getTotalFilesReceived(), info.getTotalSizeReceived());
 +                    for (ProgressInfo progress : info.getReceivingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +                if (!info.sendingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Sending %d files, %s total. Already sent %d files, %s total%n", info.getTotalFilesToSend(), FileUtils.stringifyFileSize(info.getTotalSizeToSend()), info.getTotalFilesSent(), FileUtils.stringifyFileSize(info.getTotalSizeSent()));
 +                    else
 +                        System.out.printf("        Sending %d files, %d bytes total. Already sent %d files, %d bytes total%n", info.getTotalFilesToSend(), info.getTotalSizeToSend(), info.getTotalFilesSent(), info.getTotalSizeSent());
 +                    for (ProgressInfo progress : info.getSendingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +            }
 +        }
 +
 +        if (!probe.isStarting())
 +        {
 +            System.out.printf("Read Repair Statistics:%nAttempted: %d%nMismatch (Blocking): %d%nMismatch (Background): %d%n", probe.getReadRepairAttempted(), probe.getReadRepairRepairedBlocking(), probe.getReadRepairRepairedBackground());
 +
 +            MessagingServiceMBean ms = probe.msProxy;
 +            System.out.printf("%-25s", "Pool Name");
 +            System.out.printf("%10s", "Active");
 +            System.out.printf("%10s", "Pending");
-             System.out.printf("%15s%n", "Completed");
++            System.out.printf("%15s", "Completed");
++            System.out.printf("%10s%n", "Dropped");
 +
 +            int pending;
 +            long completed;
++            long dropped;
 +
 +            pending = 0;
 +            for (int n : ms.getLargeMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getLargeMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Large messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getLargeMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Large messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getSmallMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getSmallMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Small messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getSmallMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Small messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getGossipMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getGossipMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Gossip messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getGossipMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Gossip messages", "n/a", pending, completed, dropped);
 +        }
 +    }
 +}


[07/15] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2

Posted by yu...@apache.org.
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/e0c6a9ec
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e0c6a9ec
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e0c6a9ec

Branch: refs/heads/cassandra-2.2
Commit: e0c6a9eca074f1be00ef60131f4db40cc4ea5307
Parents: 2837ec6 129b119
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:52:45 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:52:45 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 103d057,7a0ccba..795e823
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,24 -1,9 +1,25 @@@
 -2.1.15
 +2.2.7
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
 + * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 + * Prohibit Reverse Counter type as part of the PK (CASSANDRA-9395)
 + * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
 + * Exit JVM if JMX server fails to startup (CASSANDRA-11540)
 + * Produce a heap dump when exiting on OOM (CASSANDRA-9861)
 + * Avoid read repairing purgeable tombstones on range slices (CASSANDRA-11427)
 + * Restore ability to filter on clustering columns when using a 2i (CASSANDRA-11510)
 + * JSON datetime formatting needs timezone (CASSANDRA-11137)
 + * Fix is_dense recalculation for Thrift-updated tables (CASSANDRA-11502)
 + * Remove unnescessary file existence check during anticompaction (CASSANDRA-11660)
 + * Add missing files to debian packages (CASSANDRA-11642)
 + * Avoid calling Iterables::concat in loops during ModificationStatement::getFunctions (CASSANDRA-11621)
 + * cqlsh: COPY FROM should use regular inserts for single statement batches and
 +   report errors correctly if workers processes crash on initialization (CASSANDRA-11474)
 + * Always close cluster with connection in CqlRecordWriter (CASSANDRA-11553)
 + * Fix slice queries on ordered COMPACT tables (CASSANDRA-10988)
 +Merged from 2.1:
+  * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
     expired tombstone (CASSANDRA-11834)
 - * Fix paging on DISTINCT queries repeats result when first row in partition changes 
 -   (CASSANDRA-11679)
   * Add option to disable use of severity in DynamicEndpointSnitch (CASSANDRA-11737)
   * cqlsh COPY FROM fails for null values with non-prepared statements (CASSANDRA-11631)
   * Make cython optional in pylib/setup.py (CASSANDRA-11630)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/nodetool/NetStats.java
index 3e06ca0,0000000..5b84dff
mode 100644,000000..100644
--- a/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
+++ b/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
@@@ -1,123 -1,0 +1,134 @@@
 +/*
 + * 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 io.airlift.command.Option;
 +
 +import java.util.Set;
 +
 +import org.apache.cassandra.io.util.FileUtils;
 +import org.apache.cassandra.net.MessagingServiceMBean;
 +import org.apache.cassandra.streaming.ProgressInfo;
 +import org.apache.cassandra.streaming.SessionInfo;
 +import org.apache.cassandra.streaming.StreamState;
 +import org.apache.cassandra.tools.NodeProbe;
 +import org.apache.cassandra.tools.NodeTool.NodeToolCmd;
 +
 +@Command(name = "netstats", description = "Print network information on provided host (connecting node by default)")
 +public class NetStats extends NodeToolCmd
 +{
 +    @Option(title = "human_readable",
 +            name = {"-H", "--human-readable"},
 +            description = "Display bytes in human readable form, i.e. KB, MB, GB, TB")
 +    private boolean humanReadable = false;
 +
 +    @Override
 +    public void execute(NodeProbe probe)
 +    {
 +        System.out.printf("Mode: %s%n", probe.getOperationMode());
 +        Set<StreamState> statuses = probe.getStreamStatus();
 +        if (statuses.isEmpty())
 +            System.out.println("Not sending any streams.");
 +        for (StreamState status : statuses)
 +        {
 +            System.out.printf("%s %s%n", status.description, status.planId.toString());
 +            for (SessionInfo info : status.sessions)
 +            {
 +                System.out.printf("    %s", info.peer.toString());
 +                // print private IP when it is used
 +                if (!info.peer.equals(info.connecting))
 +                {
 +                    System.out.printf(" (using %s)", info.connecting.toString());
 +                }
 +                System.out.printf("%n");
 +                if (!info.receivingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Receiving %d files, %s total. Already received %d files, %s total%n", info.getTotalFilesToReceive(), FileUtils.stringifyFileSize(info.getTotalSizeToReceive()), info.getTotalFilesReceived(), FileUtils.stringifyFileSize(info.getTotalSizeReceived()));
 +                    else
 +                        System.out.printf("        Receiving %d files, %d bytes total. Already received %d files, %d bytes total%n", info.getTotalFilesToReceive(), info.getTotalSizeToReceive(), info.getTotalFilesReceived(), info.getTotalSizeReceived());
 +                    for (ProgressInfo progress : info.getReceivingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +                if (!info.sendingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Sending %d files, %s total. Already sent %d files, %s total%n", info.getTotalFilesToSend(), FileUtils.stringifyFileSize(info.getTotalSizeToSend()), info.getTotalFilesSent(), FileUtils.stringifyFileSize(info.getTotalSizeSent()));
 +                    else
 +                        System.out.printf("        Sending %d files, %d bytes total. Already sent %d files, %d bytes total%n", info.getTotalFilesToSend(), info.getTotalSizeToSend(), info.getTotalFilesSent(), info.getTotalSizeSent());
 +                    for (ProgressInfo progress : info.getSendingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +            }
 +        }
 +
 +        if (!probe.isStarting())
 +        {
 +            System.out.printf("Read Repair Statistics:%nAttempted: %d%nMismatch (Blocking): %d%nMismatch (Background): %d%n", probe.getReadRepairAttempted(), probe.getReadRepairRepairedBlocking(), probe.getReadRepairRepairedBackground());
 +
 +            MessagingServiceMBean ms = probe.msProxy;
 +            System.out.printf("%-25s", "Pool Name");
 +            System.out.printf("%10s", "Active");
 +            System.out.printf("%10s", "Pending");
-             System.out.printf("%15s%n", "Completed");
++            System.out.printf("%15s", "Completed");
++            System.out.printf("%10s%n", "Dropped");
 +
 +            int pending;
 +            long completed;
++            long dropped;
 +
 +            pending = 0;
 +            for (int n : ms.getLargeMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getLargeMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Large messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getLargeMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Large messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getSmallMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getSmallMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Small messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getSmallMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Small messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getGossipMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getGossipMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Gossip messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getGossipMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Gossip messages", "n/a", pending, completed, dropped);
 +        }
 +    }
 +}


[11/15] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0

Posted by yu...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0


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

Branch: refs/heads/cassandra-3.7
Commit: 4cdce5645080c288bcee64a79d68a840e0299cba
Parents: 6663c5f e0c6a9e
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:57:14 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:57:14 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4cdce564/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 27398db,795e823..608d6c9
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,35 -1,7 +1,36 @@@
 -2.2.7
 - * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
 +3.0.7
 + * Use CFS.initialDirectories when clearing snapshots (CASSANDRA-11705)
 + * Allow compaction strategies to disable early open (CASSANDRA-11754)
 + * Refactor Materialized View code (CASSANDRA-11475)
 + * Update Java Driver (CASSANDRA-11615)
 +Merged from 2.2:
++ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 - * Prohibit Reverse Counter type as part of the PK (CASSANDRA-9395)
 + * Prohibit Reversed Counter type as part of the PK (CASSANDRA-9395)
 +
 +
 +3.0.6
 + * Disallow creating view with a static column (CASSANDRA-11602)
 + * Reduce the amount of object allocations caused by the getFunctions methods (CASSANDRA-11593)
 + * Potential error replaying commitlog with smallint/tinyint/date/time types (CASSANDRA-11618)
 + * Fix queries with filtering on counter columns (CASSANDRA-11629)
 + * Improve tombstone printing in sstabledump (CASSANDRA-11655)
 + * Fix paging for range queries where all clustering columns are specified (CASSANDRA-11669)
 + * Don't require HEAP_NEW_SIZE to be set when using G1 (CASSANDRA-11600)
 + * Fix sstabledump not showing cells after tombstone marker (CASSANDRA-11654)
 + * Ignore all LocalStrategy keyspaces for streaming and other related
 +   operations (CASSANDRA-11627)
 + * Ensure columnfilter covers indexed columns for thrift 2i queries (CASSANDRA-11523)
 + * Only open one sstable scanner per sstable (CASSANDRA-11412)
 + * Option to specify ProtocolVersion in cassandra-stress (CASSANDRA-11410)
 + * ArithmeticException in avgFunctionForDecimal (CASSANDRA-11485)
 + * LogAwareFileLister should only use OLD sstable files in current folder to determine disk consistency (CASSANDRA-11470)
 + * Notify indexers of expired rows during compaction (CASSANDRA-11329)
 + * Properly respond with ProtocolError when a v1/v2 native protocol
 +   header is received (CASSANDRA-11464)
 + * Validate that num_tokens and initial_token are consistent with one another (CASSANDRA-10120)
 +Merged from 2.2:
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
   * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
   * Exit JVM if JMX server fails to startup (CASSANDRA-11540)
   * Produce a heap dump when exiting on OOM (CASSANDRA-9861)


[15/15] cassandra git commit: Merge branch 'cassandra-3.7' into trunk

Posted by yu...@apache.org.
Merge branch 'cassandra-3.7' into trunk


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

Branch: refs/heads/trunk
Commit: 400ad9468fe4156a5a3f14b6c6f66f0ac7b22aee
Parents: 74f41c9 bdb9421
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:57:49 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:57:49 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/400ad946/CHANGES.txt
----------------------------------------------------------------------


[06/15] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2

Posted by yu...@apache.org.
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/e0c6a9ec
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e0c6a9ec
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e0c6a9ec

Branch: refs/heads/trunk
Commit: e0c6a9eca074f1be00ef60131f4db40cc4ea5307
Parents: 2837ec6 129b119
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:52:45 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:52:45 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 103d057,7a0ccba..795e823
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,24 -1,9 +1,25 @@@
 -2.1.15
 +2.2.7
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
 + * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 + * Prohibit Reverse Counter type as part of the PK (CASSANDRA-9395)
 + * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
 + * Exit JVM if JMX server fails to startup (CASSANDRA-11540)
 + * Produce a heap dump when exiting on OOM (CASSANDRA-9861)
 + * Avoid read repairing purgeable tombstones on range slices (CASSANDRA-11427)
 + * Restore ability to filter on clustering columns when using a 2i (CASSANDRA-11510)
 + * JSON datetime formatting needs timezone (CASSANDRA-11137)
 + * Fix is_dense recalculation for Thrift-updated tables (CASSANDRA-11502)
 + * Remove unnescessary file existence check during anticompaction (CASSANDRA-11660)
 + * Add missing files to debian packages (CASSANDRA-11642)
 + * Avoid calling Iterables::concat in loops during ModificationStatement::getFunctions (CASSANDRA-11621)
 + * cqlsh: COPY FROM should use regular inserts for single statement batches and
 +   report errors correctly if workers processes crash on initialization (CASSANDRA-11474)
 + * Always close cluster with connection in CqlRecordWriter (CASSANDRA-11553)
 + * Fix slice queries on ordered COMPACT tables (CASSANDRA-10988)
 +Merged from 2.1:
+  * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
     expired tombstone (CASSANDRA-11834)
 - * Fix paging on DISTINCT queries repeats result when first row in partition changes 
 -   (CASSANDRA-11679)
   * Add option to disable use of severity in DynamicEndpointSnitch (CASSANDRA-11737)
   * cqlsh COPY FROM fails for null values with non-prepared statements (CASSANDRA-11631)
   * Make cython optional in pylib/setup.py (CASSANDRA-11630)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/nodetool/NetStats.java
index 3e06ca0,0000000..5b84dff
mode 100644,000000..100644
--- a/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
+++ b/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
@@@ -1,123 -1,0 +1,134 @@@
 +/*
 + * 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 io.airlift.command.Option;
 +
 +import java.util.Set;
 +
 +import org.apache.cassandra.io.util.FileUtils;
 +import org.apache.cassandra.net.MessagingServiceMBean;
 +import org.apache.cassandra.streaming.ProgressInfo;
 +import org.apache.cassandra.streaming.SessionInfo;
 +import org.apache.cassandra.streaming.StreamState;
 +import org.apache.cassandra.tools.NodeProbe;
 +import org.apache.cassandra.tools.NodeTool.NodeToolCmd;
 +
 +@Command(name = "netstats", description = "Print network information on provided host (connecting node by default)")
 +public class NetStats extends NodeToolCmd
 +{
 +    @Option(title = "human_readable",
 +            name = {"-H", "--human-readable"},
 +            description = "Display bytes in human readable form, i.e. KB, MB, GB, TB")
 +    private boolean humanReadable = false;
 +
 +    @Override
 +    public void execute(NodeProbe probe)
 +    {
 +        System.out.printf("Mode: %s%n", probe.getOperationMode());
 +        Set<StreamState> statuses = probe.getStreamStatus();
 +        if (statuses.isEmpty())
 +            System.out.println("Not sending any streams.");
 +        for (StreamState status : statuses)
 +        {
 +            System.out.printf("%s %s%n", status.description, status.planId.toString());
 +            for (SessionInfo info : status.sessions)
 +            {
 +                System.out.printf("    %s", info.peer.toString());
 +                // print private IP when it is used
 +                if (!info.peer.equals(info.connecting))
 +                {
 +                    System.out.printf(" (using %s)", info.connecting.toString());
 +                }
 +                System.out.printf("%n");
 +                if (!info.receivingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Receiving %d files, %s total. Already received %d files, %s total%n", info.getTotalFilesToReceive(), FileUtils.stringifyFileSize(info.getTotalSizeToReceive()), info.getTotalFilesReceived(), FileUtils.stringifyFileSize(info.getTotalSizeReceived()));
 +                    else
 +                        System.out.printf("        Receiving %d files, %d bytes total. Already received %d files, %d bytes total%n", info.getTotalFilesToReceive(), info.getTotalSizeToReceive(), info.getTotalFilesReceived(), info.getTotalSizeReceived());
 +                    for (ProgressInfo progress : info.getReceivingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +                if (!info.sendingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Sending %d files, %s total. Already sent %d files, %s total%n", info.getTotalFilesToSend(), FileUtils.stringifyFileSize(info.getTotalSizeToSend()), info.getTotalFilesSent(), FileUtils.stringifyFileSize(info.getTotalSizeSent()));
 +                    else
 +                        System.out.printf("        Sending %d files, %d bytes total. Already sent %d files, %d bytes total%n", info.getTotalFilesToSend(), info.getTotalSizeToSend(), info.getTotalFilesSent(), info.getTotalSizeSent());
 +                    for (ProgressInfo progress : info.getSendingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +            }
 +        }
 +
 +        if (!probe.isStarting())
 +        {
 +            System.out.printf("Read Repair Statistics:%nAttempted: %d%nMismatch (Blocking): %d%nMismatch (Background): %d%n", probe.getReadRepairAttempted(), probe.getReadRepairRepairedBlocking(), probe.getReadRepairRepairedBackground());
 +
 +            MessagingServiceMBean ms = probe.msProxy;
 +            System.out.printf("%-25s", "Pool Name");
 +            System.out.printf("%10s", "Active");
 +            System.out.printf("%10s", "Pending");
-             System.out.printf("%15s%n", "Completed");
++            System.out.printf("%15s", "Completed");
++            System.out.printf("%10s%n", "Dropped");
 +
 +            int pending;
 +            long completed;
++            long dropped;
 +
 +            pending = 0;
 +            for (int n : ms.getLargeMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getLargeMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Large messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getLargeMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Large messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getSmallMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getSmallMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Small messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getSmallMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Small messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getGossipMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getGossipMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Gossip messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getGossipMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Gossip messages", "n/a", pending, completed, dropped);
 +        }
 +    }
 +}


[09/15] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2

Posted by yu...@apache.org.
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/e0c6a9ec
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e0c6a9ec
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e0c6a9ec

Branch: refs/heads/cassandra-3.7
Commit: e0c6a9eca074f1be00ef60131f4db40cc4ea5307
Parents: 2837ec6 129b119
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:52:45 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:52:45 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 103d057,7a0ccba..795e823
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,24 -1,9 +1,25 @@@
 -2.1.15
 +2.2.7
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
 + * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 + * Prohibit Reverse Counter type as part of the PK (CASSANDRA-9395)
 + * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
 + * Exit JVM if JMX server fails to startup (CASSANDRA-11540)
 + * Produce a heap dump when exiting on OOM (CASSANDRA-9861)
 + * Avoid read repairing purgeable tombstones on range slices (CASSANDRA-11427)
 + * Restore ability to filter on clustering columns when using a 2i (CASSANDRA-11510)
 + * JSON datetime formatting needs timezone (CASSANDRA-11137)
 + * Fix is_dense recalculation for Thrift-updated tables (CASSANDRA-11502)
 + * Remove unnescessary file existence check during anticompaction (CASSANDRA-11660)
 + * Add missing files to debian packages (CASSANDRA-11642)
 + * Avoid calling Iterables::concat in loops during ModificationStatement::getFunctions (CASSANDRA-11621)
 + * cqlsh: COPY FROM should use regular inserts for single statement batches and
 +   report errors correctly if workers processes crash on initialization (CASSANDRA-11474)
 + * Always close cluster with connection in CqlRecordWriter (CASSANDRA-11553)
 + * Fix slice queries on ordered COMPACT tables (CASSANDRA-10988)
 +Merged from 2.1:
+  * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
     expired tombstone (CASSANDRA-11834)
 - * Fix paging on DISTINCT queries repeats result when first row in partition changes 
 -   (CASSANDRA-11679)
   * Add option to disable use of severity in DynamicEndpointSnitch (CASSANDRA-11737)
   * cqlsh COPY FROM fails for null values with non-prepared statements (CASSANDRA-11631)
   * Make cython optional in pylib/setup.py (CASSANDRA-11630)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c6a9ec/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/nodetool/NetStats.java
index 3e06ca0,0000000..5b84dff
mode 100644,000000..100644
--- a/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
+++ b/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
@@@ -1,123 -1,0 +1,134 @@@
 +/*
 + * 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 io.airlift.command.Option;
 +
 +import java.util.Set;
 +
 +import org.apache.cassandra.io.util.FileUtils;
 +import org.apache.cassandra.net.MessagingServiceMBean;
 +import org.apache.cassandra.streaming.ProgressInfo;
 +import org.apache.cassandra.streaming.SessionInfo;
 +import org.apache.cassandra.streaming.StreamState;
 +import org.apache.cassandra.tools.NodeProbe;
 +import org.apache.cassandra.tools.NodeTool.NodeToolCmd;
 +
 +@Command(name = "netstats", description = "Print network information on provided host (connecting node by default)")
 +public class NetStats extends NodeToolCmd
 +{
 +    @Option(title = "human_readable",
 +            name = {"-H", "--human-readable"},
 +            description = "Display bytes in human readable form, i.e. KB, MB, GB, TB")
 +    private boolean humanReadable = false;
 +
 +    @Override
 +    public void execute(NodeProbe probe)
 +    {
 +        System.out.printf("Mode: %s%n", probe.getOperationMode());
 +        Set<StreamState> statuses = probe.getStreamStatus();
 +        if (statuses.isEmpty())
 +            System.out.println("Not sending any streams.");
 +        for (StreamState status : statuses)
 +        {
 +            System.out.printf("%s %s%n", status.description, status.planId.toString());
 +            for (SessionInfo info : status.sessions)
 +            {
 +                System.out.printf("    %s", info.peer.toString());
 +                // print private IP when it is used
 +                if (!info.peer.equals(info.connecting))
 +                {
 +                    System.out.printf(" (using %s)", info.connecting.toString());
 +                }
 +                System.out.printf("%n");
 +                if (!info.receivingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Receiving %d files, %s total. Already received %d files, %s total%n", info.getTotalFilesToReceive(), FileUtils.stringifyFileSize(info.getTotalSizeToReceive()), info.getTotalFilesReceived(), FileUtils.stringifyFileSize(info.getTotalSizeReceived()));
 +                    else
 +                        System.out.printf("        Receiving %d files, %d bytes total. Already received %d files, %d bytes total%n", info.getTotalFilesToReceive(), info.getTotalSizeToReceive(), info.getTotalFilesReceived(), info.getTotalSizeReceived());
 +                    for (ProgressInfo progress : info.getReceivingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +                if (!info.sendingSummaries.isEmpty())
 +                {
 +                    if (humanReadable)
 +                        System.out.printf("        Sending %d files, %s total. Already sent %d files, %s total%n", info.getTotalFilesToSend(), FileUtils.stringifyFileSize(info.getTotalSizeToSend()), info.getTotalFilesSent(), FileUtils.stringifyFileSize(info.getTotalSizeSent()));
 +                    else
 +                        System.out.printf("        Sending %d files, %d bytes total. Already sent %d files, %d bytes total%n", info.getTotalFilesToSend(), info.getTotalSizeToSend(), info.getTotalFilesSent(), info.getTotalSizeSent());
 +                    for (ProgressInfo progress : info.getSendingFiles())
 +                    {
 +                        System.out.printf("            %s%n", progress.toString());
 +                    }
 +                }
 +            }
 +        }
 +
 +        if (!probe.isStarting())
 +        {
 +            System.out.printf("Read Repair Statistics:%nAttempted: %d%nMismatch (Blocking): %d%nMismatch (Background): %d%n", probe.getReadRepairAttempted(), probe.getReadRepairRepairedBlocking(), probe.getReadRepairRepairedBackground());
 +
 +            MessagingServiceMBean ms = probe.msProxy;
 +            System.out.printf("%-25s", "Pool Name");
 +            System.out.printf("%10s", "Active");
 +            System.out.printf("%10s", "Pending");
-             System.out.printf("%15s%n", "Completed");
++            System.out.printf("%15s", "Completed");
++            System.out.printf("%10s%n", "Dropped");
 +
 +            int pending;
 +            long completed;
++            long dropped;
 +
 +            pending = 0;
 +            for (int n : ms.getLargeMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getLargeMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Large messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getLargeMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Large messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getSmallMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getSmallMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Small messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getSmallMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Small messages", "n/a", pending, completed, dropped);
 +
 +            pending = 0;
 +            for (int n : ms.getGossipMessagePendingTasks().values())
 +                pending += n;
 +            completed = 0;
 +            for (long n : ms.getGossipMessageCompletedTasks().values())
 +                completed += n;
-             System.out.printf("%-25s%10s%10s%15s%n", "Gossip messages", "n/a", pending, completed);
++            dropped = 0;
++            for (long n : ms.getGossipMessageDroppedTasks().values())
++                dropped += n;
++            System.out.printf("%-25s%10s%10s%15s%10s%n", "Gossip messages", "n/a", pending, completed, dropped);
 +        }
 +    }
 +}


[05/15] cassandra git commit: Add message dropped tasks to nodetool netstats

Posted by yu...@apache.org.
Add message dropped tasks to nodetool netstats

patch by Jeremiah Jordan; reviewed by yukim for CASSANDRA-11855


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

Branch: refs/heads/cassandra-3.7
Commit: 129b1193e26c015fd06ed652eb62dcd509b6bc50
Parents: 00f2540
Author: Jeremiah D Jordan <je...@datastax.com>
Authored: Fri May 20 11:44:44 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:27:13 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                       |  1 +
 src/java/org/apache/cassandra/tools/NodeTool.java | 11 ++++++++---
 2 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3972248..7a0ccba 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.1.15
+ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
  * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
    expired tombstone (CASSANDRA-11834)
  * Fix paging on DISTINCT queries repeats result when first row in partition changes 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/src/java/org/apache/cassandra/tools/NodeTool.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeTool.java b/src/java/org/apache/cassandra/tools/NodeTool.java
index 1de2e20..5af8240 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -708,10 +708,12 @@ public class NodeTool
                 System.out.printf("%-25s", "Pool Name");
                 System.out.printf("%10s", "Active");
                 System.out.printf("%10s", "Pending");
-                System.out.printf("%15s%n", "Completed");
+                System.out.printf("%15s", "Completed");
+                System.out.printf("%10s%n", "Dropped");
 
                 int pending;
                 long completed;
+                long dropped;
 
                 pending = 0;
                 for (int n : ms.getCommandPendingTasks().values())
@@ -719,7 +721,10 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getCommandCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Commands", "n/a", pending, completed);
+                dropped = 0;
+                for (long n : ms.getCommandDroppedTasks().values())
+                    dropped += n;
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Commands", "n/a", pending, completed, dropped);
 
                 pending = 0;
                 for (int n : ms.getResponsePendingTasks().values())
@@ -727,7 +732,7 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getResponseCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Responses", "n/a", pending, completed);
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Responses", "n/a", pending, completed, "n/a");
             }
         }
     }


[03/15] cassandra git commit: Add message dropped tasks to nodetool netstats

Posted by yu...@apache.org.
Add message dropped tasks to nodetool netstats

patch by Jeremiah Jordan; reviewed by yukim for CASSANDRA-11855


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

Branch: refs/heads/trunk
Commit: 129b1193e26c015fd06ed652eb62dcd509b6bc50
Parents: 00f2540
Author: Jeremiah D Jordan <je...@datastax.com>
Authored: Fri May 20 11:44:44 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:27:13 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                       |  1 +
 src/java/org/apache/cassandra/tools/NodeTool.java | 11 ++++++++---
 2 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3972248..7a0ccba 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.1.15
+ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
  * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
    expired tombstone (CASSANDRA-11834)
  * Fix paging on DISTINCT queries repeats result when first row in partition changes 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/src/java/org/apache/cassandra/tools/NodeTool.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeTool.java b/src/java/org/apache/cassandra/tools/NodeTool.java
index 1de2e20..5af8240 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -708,10 +708,12 @@ public class NodeTool
                 System.out.printf("%-25s", "Pool Name");
                 System.out.printf("%10s", "Active");
                 System.out.printf("%10s", "Pending");
-                System.out.printf("%15s%n", "Completed");
+                System.out.printf("%15s", "Completed");
+                System.out.printf("%10s%n", "Dropped");
 
                 int pending;
                 long completed;
+                long dropped;
 
                 pending = 0;
                 for (int n : ms.getCommandPendingTasks().values())
@@ -719,7 +721,10 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getCommandCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Commands", "n/a", pending, completed);
+                dropped = 0;
+                for (long n : ms.getCommandDroppedTasks().values())
+                    dropped += n;
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Commands", "n/a", pending, completed, dropped);
 
                 pending = 0;
                 for (int n : ms.getResponsePendingTasks().values())
@@ -727,7 +732,7 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getResponseCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Responses", "n/a", pending, completed);
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Responses", "n/a", pending, completed, "n/a");
             }
         }
     }


[02/15] cassandra git commit: Add message dropped tasks to nodetool netstats

Posted by yu...@apache.org.
Add message dropped tasks to nodetool netstats

patch by Jeremiah Jordan; reviewed by yukim for CASSANDRA-11855


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

Branch: refs/heads/cassandra-2.2
Commit: 129b1193e26c015fd06ed652eb62dcd509b6bc50
Parents: 00f2540
Author: Jeremiah D Jordan <je...@datastax.com>
Authored: Fri May 20 11:44:44 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:27:13 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                       |  1 +
 src/java/org/apache/cassandra/tools/NodeTool.java | 11 ++++++++---
 2 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3972248..7a0ccba 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.1.15
+ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
  * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
    expired tombstone (CASSANDRA-11834)
  * Fix paging on DISTINCT queries repeats result when first row in partition changes 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/src/java/org/apache/cassandra/tools/NodeTool.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeTool.java b/src/java/org/apache/cassandra/tools/NodeTool.java
index 1de2e20..5af8240 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -708,10 +708,12 @@ public class NodeTool
                 System.out.printf("%-25s", "Pool Name");
                 System.out.printf("%10s", "Active");
                 System.out.printf("%10s", "Pending");
-                System.out.printf("%15s%n", "Completed");
+                System.out.printf("%15s", "Completed");
+                System.out.printf("%10s%n", "Dropped");
 
                 int pending;
                 long completed;
+                long dropped;
 
                 pending = 0;
                 for (int n : ms.getCommandPendingTasks().values())
@@ -719,7 +721,10 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getCommandCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Commands", "n/a", pending, completed);
+                dropped = 0;
+                for (long n : ms.getCommandDroppedTasks().values())
+                    dropped += n;
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Commands", "n/a", pending, completed, dropped);
 
                 pending = 0;
                 for (int n : ms.getResponsePendingTasks().values())
@@ -727,7 +732,7 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getResponseCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Responses", "n/a", pending, completed);
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Responses", "n/a", pending, completed, "n/a");
             }
         }
     }


[14/15] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.7

Posted by yu...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.7


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

Branch: refs/heads/trunk
Commit: bdb942173945b4d2705f622fc68e3b5886570f31
Parents: f294750 4cdce56
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:57:42 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:57:42 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/bdb94217/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 4c50980,608d6c9..551329e
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -6,83 -4,12 +6,84 @@@ Merged from 3.0
   * Refactor Materialized View code (CASSANDRA-11475)
   * Update Java Driver (CASSANDRA-11615)
  Merged from 2.2:
+  * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
   * Prohibit Reversed Counter type as part of the PK (CASSANDRA-9395)
 + * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
  
  
 -3.0.6
 +3.6
 + * Correctly migrate schema for frozen UDTs during 2.x -> 3.x upgrades
 +   (does not affect any released versions) (CASSANDRA-11613)
 + * Allow server startup if JMX is configured directly (CASSANDRA-11725)
 + * Prevent direct memory OOM on buffer pool allocations (CASSANDRA-11710)
 + * Enhanced Compaction Logging (CASSANDRA-10805)
 + * Make prepared statement cache size configurable (CASSANDRA-11555)
 + * Integrated JMX authentication and authorization (CASSANDRA-10091)
 + * Add units to stress ouput (CASSANDRA-11352)
 + * Fix PER PARTITION LIMIT for single and multi partitions queries (CASSANDRA-11603)
 + * Add uncompressed chunk cache for RandomAccessReader (CASSANDRA-5863)
 + * Clarify ClusteringPrefix hierarchy (CASSANDRA-11213)
 + * Always perform collision check before joining ring (CASSANDRA-10134)
 + * SSTableWriter output discrepancy (CASSANDRA-11646)
 + * Fix potential timeout in NativeTransportService.testConcurrentDestroys (CASSANDRA-10756)
 + * Support large partitions on the 3.0 sstable format (CASSANDRA-11206)
 + * Add support to rebuild from specific range (CASSANDRA-10406)
 + * Optimize the overlapping lookup by calculating all the
 +   bounds in advance (CASSANDRA-11571)
 + * Support json/yaml output in noetool tablestats (CASSANDRA-5977)
 + * (stress) Add datacenter option to -node options (CASSANDRA-11591)
 + * Fix handling of empty slices (CASSANDRA-11513)
 + * Make number of cores used by cqlsh COPY visible to testing code (CASSANDRA-11437)
 + * Allow filtering on clustering columns for queries without secondary indexes (CASSANDRA-11310)
 + * Refactor Restriction hierarchy (CASSANDRA-11354)
 + * Eliminate allocations in R/W path (CASSANDRA-11421)
 + * Update Netty to 4.0.36 (CASSANDRA-11567)
 + * Fix PER PARTITION LIMIT for queries requiring post-query ordering (CASSANDRA-11556)
 + * Allow instantiation of UDTs and tuples in UDFs (CASSANDRA-10818)
 + * Support UDT in CQLSSTableWriter (CASSANDRA-10624)
 + * Support for non-frozen user-defined types, updating
 +   individual fields of user-defined types (CASSANDRA-7423)
 + * Make LZ4 compression level configurable (CASSANDRA-11051)
 + * Allow per-partition LIMIT clause in CQL (CASSANDRA-7017)
 + * Make custom filtering more extensible with UserExpression (CASSANDRA-11295)
 + * Improve field-checking and error reporting in cassandra.yaml (CASSANDRA-10649)
 + * Print CAS stats in nodetool proxyhistograms (CASSANDRA-11507)
 + * More user friendly error when providing an invalid token to nodetool (CASSANDRA-9348)
 + * Add static column support to SASI index (CASSANDRA-11183)
 + * Support EQ/PREFIX queries in SASI CONTAINS mode without tokenization (CASSANDRA-11434)
 + * Support LIKE operator in prepared statements (CASSANDRA-11456)
 + * Add a command to see if a Materialized View has finished building (CASSANDRA-9967)
 + * Log endpoint and port associated with streaming operation (CASSANDRA-8777)
 + * Print sensible units for all log messages (CASSANDRA-9692)
 + * Upgrade Netty to version 4.0.34 (CASSANDRA-11096)
 + * Break the CQL grammar into separate Parser and Lexer (CASSANDRA-11372)
 + * Compress only inter-dc traffic by default (CASSANDRA-8888)
 + * Add metrics to track write amplification (CASSANDRA-11420)
 + * cassandra-stress: cannot handle "value-less" tables (CASSANDRA-7739)
 + * Add/drop multiple columns in one ALTER TABLE statement (CASSANDRA-10411)
 + * Add require_endpoint_verification opt for internode encryption (CASSANDRA-9220)
 + * Add auto import java.util for UDF code block (CASSANDRA-11392)
 + * Add --hex-format option to nodetool getsstables (CASSANDRA-11337)
 + * sstablemetadata should print sstable min/max token (CASSANDRA-7159)
 + * Do not wrap CassandraException in TriggerExecutor (CASSANDRA-9421)
 + * COPY TO should have higher double precision (CASSANDRA-11255)
 + * Stress should exit with non-zero status after failure (CASSANDRA-10340)
 + * Add client to cqlsh SHOW_SESSION (CASSANDRA-8958)
 + * Fix nodetool tablestats keyspace level metrics (CASSANDRA-11226)
 + * Store repair options in parent_repair_history (CASSANDRA-11244)
 + * Print current leveling in sstableofflinerelevel (CASSANDRA-9588)
 + * Change repair message for keyspaces with RF 1 (CASSANDRA-11203)
 + * Remove hard-coded SSL cipher suites and protocols (CASSANDRA-10508)
 + * Improve concurrency in CompactionStrategyManager (CASSANDRA-10099)
 + * (cqlsh) interpret CQL type for formatting blobs (CASSANDRA-11274)
 + * Refuse to start and print txn log information in case of disk
 +   corruption (CASSANDRA-10112)
 + * Resolve some eclipse-warnings (CASSANDRA-11086)
 + * (cqlsh) Show static columns in a different color (CASSANDRA-11059)
 + * Allow to remove TTLs on table with default_time_to_live (CASSANDRA-11207)
 +Merged from 3.0:
   * Disallow creating view with a static column (CASSANDRA-11602)
   * Reduce the amount of object allocations caused by the getFunctions methods (CASSANDRA-11593)
   * Potential error replaying commitlog with smallint/tinyint/date/time types (CASSANDRA-11618)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/bdb94217/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
----------------------------------------------------------------------


[04/15] cassandra git commit: Add message dropped tasks to nodetool netstats

Posted by yu...@apache.org.
Add message dropped tasks to nodetool netstats

patch by Jeremiah Jordan; reviewed by yukim for CASSANDRA-11855


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

Branch: refs/heads/cassandra-3.0
Commit: 129b1193e26c015fd06ed652eb62dcd509b6bc50
Parents: 00f2540
Author: Jeremiah D Jordan <je...@datastax.com>
Authored: Fri May 20 11:44:44 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:27:13 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                       |  1 +
 src/java/org/apache/cassandra/tools/NodeTool.java | 11 ++++++++---
 2 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3972248..7a0ccba 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.1.15
+ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
  * Don't compute expensive MaxPurgeableTimestamp until we've verified there's an 
    expired tombstone (CASSANDRA-11834)
  * Fix paging on DISTINCT queries repeats result when first row in partition changes 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/129b1193/src/java/org/apache/cassandra/tools/NodeTool.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeTool.java b/src/java/org/apache/cassandra/tools/NodeTool.java
index 1de2e20..5af8240 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -708,10 +708,12 @@ public class NodeTool
                 System.out.printf("%-25s", "Pool Name");
                 System.out.printf("%10s", "Active");
                 System.out.printf("%10s", "Pending");
-                System.out.printf("%15s%n", "Completed");
+                System.out.printf("%15s", "Completed");
+                System.out.printf("%10s%n", "Dropped");
 
                 int pending;
                 long completed;
+                long dropped;
 
                 pending = 0;
                 for (int n : ms.getCommandPendingTasks().values())
@@ -719,7 +721,10 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getCommandCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Commands", "n/a", pending, completed);
+                dropped = 0;
+                for (long n : ms.getCommandDroppedTasks().values())
+                    dropped += n;
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Commands", "n/a", pending, completed, dropped);
 
                 pending = 0;
                 for (int n : ms.getResponsePendingTasks().values())
@@ -727,7 +732,7 @@ public class NodeTool
                 completed = 0;
                 for (long n : ms.getResponseCompletedTasks().values())
                     completed += n;
-                System.out.printf("%-25s%10s%10s%15s%n", "Responses", "n/a", pending, completed);
+                System.out.printf("%-25s%10s%10s%15s%10s%n", "Responses", "n/a", pending, completed, "n/a");
             }
         }
     }


[12/15] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0

Posted by yu...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0


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

Branch: refs/heads/cassandra-3.0
Commit: 4cdce5645080c288bcee64a79d68a840e0299cba
Parents: 6663c5f e0c6a9e
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:57:14 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:57:14 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4cdce564/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 27398db,795e823..608d6c9
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,35 -1,7 +1,36 @@@
 -2.2.7
 - * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
 +3.0.7
 + * Use CFS.initialDirectories when clearing snapshots (CASSANDRA-11705)
 + * Allow compaction strategies to disable early open (CASSANDRA-11754)
 + * Refactor Materialized View code (CASSANDRA-11475)
 + * Update Java Driver (CASSANDRA-11615)
 +Merged from 2.2:
++ * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 - * Prohibit Reverse Counter type as part of the PK (CASSANDRA-9395)
 + * Prohibit Reversed Counter type as part of the PK (CASSANDRA-9395)
 +
 +
 +3.0.6
 + * Disallow creating view with a static column (CASSANDRA-11602)
 + * Reduce the amount of object allocations caused by the getFunctions methods (CASSANDRA-11593)
 + * Potential error replaying commitlog with smallint/tinyint/date/time types (CASSANDRA-11618)
 + * Fix queries with filtering on counter columns (CASSANDRA-11629)
 + * Improve tombstone printing in sstabledump (CASSANDRA-11655)
 + * Fix paging for range queries where all clustering columns are specified (CASSANDRA-11669)
 + * Don't require HEAP_NEW_SIZE to be set when using G1 (CASSANDRA-11600)
 + * Fix sstabledump not showing cells after tombstone marker (CASSANDRA-11654)
 + * Ignore all LocalStrategy keyspaces for streaming and other related
 +   operations (CASSANDRA-11627)
 + * Ensure columnfilter covers indexed columns for thrift 2i queries (CASSANDRA-11523)
 + * Only open one sstable scanner per sstable (CASSANDRA-11412)
 + * Option to specify ProtocolVersion in cassandra-stress (CASSANDRA-11410)
 + * ArithmeticException in avgFunctionForDecimal (CASSANDRA-11485)
 + * LogAwareFileLister should only use OLD sstable files in current folder to determine disk consistency (CASSANDRA-11470)
 + * Notify indexers of expired rows during compaction (CASSANDRA-11329)
 + * Properly respond with ProtocolError when a v1/v2 native protocol
 +   header is received (CASSANDRA-11464)
 + * Validate that num_tokens and initial_token are consistent with one another (CASSANDRA-10120)
 +Merged from 2.2:
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
   * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
   * Exit JVM if JMX server fails to startup (CASSANDRA-11540)
   * Produce a heap dump when exiting on OOM (CASSANDRA-9861)


[13/15] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.7

Posted by yu...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.7


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

Branch: refs/heads/cassandra-3.7
Commit: bdb942173945b4d2705f622fc68e3b5886570f31
Parents: f294750 4cdce56
Author: Yuki Morishita <yu...@apache.org>
Authored: Mon May 23 09:57:42 2016 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Mon May 23 09:57:42 2016 -0500

----------------------------------------------------------------------
 CHANGES.txt                                      |  1 +
 .../cassandra/tools/nodetool/NetStats.java       | 19 +++++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/bdb94217/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 4c50980,608d6c9..551329e
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -6,83 -4,12 +6,84 @@@ Merged from 3.0
   * Refactor Materialized View code (CASSANDRA-11475)
   * Update Java Driver (CASSANDRA-11615)
  Merged from 2.2:
+  * Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
   * Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
 + * Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
   * Prohibit Reversed Counter type as part of the PK (CASSANDRA-9395)
 + * cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
  
  
 -3.0.6
 +3.6
 + * Correctly migrate schema for frozen UDTs during 2.x -> 3.x upgrades
 +   (does not affect any released versions) (CASSANDRA-11613)
 + * Allow server startup if JMX is configured directly (CASSANDRA-11725)
 + * Prevent direct memory OOM on buffer pool allocations (CASSANDRA-11710)
 + * Enhanced Compaction Logging (CASSANDRA-10805)
 + * Make prepared statement cache size configurable (CASSANDRA-11555)
 + * Integrated JMX authentication and authorization (CASSANDRA-10091)
 + * Add units to stress ouput (CASSANDRA-11352)
 + * Fix PER PARTITION LIMIT for single and multi partitions queries (CASSANDRA-11603)
 + * Add uncompressed chunk cache for RandomAccessReader (CASSANDRA-5863)
 + * Clarify ClusteringPrefix hierarchy (CASSANDRA-11213)
 + * Always perform collision check before joining ring (CASSANDRA-10134)
 + * SSTableWriter output discrepancy (CASSANDRA-11646)
 + * Fix potential timeout in NativeTransportService.testConcurrentDestroys (CASSANDRA-10756)
 + * Support large partitions on the 3.0 sstable format (CASSANDRA-11206)
 + * Add support to rebuild from specific range (CASSANDRA-10406)
 + * Optimize the overlapping lookup by calculating all the
 +   bounds in advance (CASSANDRA-11571)
 + * Support json/yaml output in noetool tablestats (CASSANDRA-5977)
 + * (stress) Add datacenter option to -node options (CASSANDRA-11591)
 + * Fix handling of empty slices (CASSANDRA-11513)
 + * Make number of cores used by cqlsh COPY visible to testing code (CASSANDRA-11437)
 + * Allow filtering on clustering columns for queries without secondary indexes (CASSANDRA-11310)
 + * Refactor Restriction hierarchy (CASSANDRA-11354)
 + * Eliminate allocations in R/W path (CASSANDRA-11421)
 + * Update Netty to 4.0.36 (CASSANDRA-11567)
 + * Fix PER PARTITION LIMIT for queries requiring post-query ordering (CASSANDRA-11556)
 + * Allow instantiation of UDTs and tuples in UDFs (CASSANDRA-10818)
 + * Support UDT in CQLSSTableWriter (CASSANDRA-10624)
 + * Support for non-frozen user-defined types, updating
 +   individual fields of user-defined types (CASSANDRA-7423)
 + * Make LZ4 compression level configurable (CASSANDRA-11051)
 + * Allow per-partition LIMIT clause in CQL (CASSANDRA-7017)
 + * Make custom filtering more extensible with UserExpression (CASSANDRA-11295)
 + * Improve field-checking and error reporting in cassandra.yaml (CASSANDRA-10649)
 + * Print CAS stats in nodetool proxyhistograms (CASSANDRA-11507)
 + * More user friendly error when providing an invalid token to nodetool (CASSANDRA-9348)
 + * Add static column support to SASI index (CASSANDRA-11183)
 + * Support EQ/PREFIX queries in SASI CONTAINS mode without tokenization (CASSANDRA-11434)
 + * Support LIKE operator in prepared statements (CASSANDRA-11456)
 + * Add a command to see if a Materialized View has finished building (CASSANDRA-9967)
 + * Log endpoint and port associated with streaming operation (CASSANDRA-8777)
 + * Print sensible units for all log messages (CASSANDRA-9692)
 + * Upgrade Netty to version 4.0.34 (CASSANDRA-11096)
 + * Break the CQL grammar into separate Parser and Lexer (CASSANDRA-11372)
 + * Compress only inter-dc traffic by default (CASSANDRA-8888)
 + * Add metrics to track write amplification (CASSANDRA-11420)
 + * cassandra-stress: cannot handle "value-less" tables (CASSANDRA-7739)
 + * Add/drop multiple columns in one ALTER TABLE statement (CASSANDRA-10411)
 + * Add require_endpoint_verification opt for internode encryption (CASSANDRA-9220)
 + * Add auto import java.util for UDF code block (CASSANDRA-11392)
 + * Add --hex-format option to nodetool getsstables (CASSANDRA-11337)
 + * sstablemetadata should print sstable min/max token (CASSANDRA-7159)
 + * Do not wrap CassandraException in TriggerExecutor (CASSANDRA-9421)
 + * COPY TO should have higher double precision (CASSANDRA-11255)
 + * Stress should exit with non-zero status after failure (CASSANDRA-10340)
 + * Add client to cqlsh SHOW_SESSION (CASSANDRA-8958)
 + * Fix nodetool tablestats keyspace level metrics (CASSANDRA-11226)
 + * Store repair options in parent_repair_history (CASSANDRA-11244)
 + * Print current leveling in sstableofflinerelevel (CASSANDRA-9588)
 + * Change repair message for keyspaces with RF 1 (CASSANDRA-11203)
 + * Remove hard-coded SSL cipher suites and protocols (CASSANDRA-10508)
 + * Improve concurrency in CompactionStrategyManager (CASSANDRA-10099)
 + * (cqlsh) interpret CQL type for formatting blobs (CASSANDRA-11274)
 + * Refuse to start and print txn log information in case of disk
 +   corruption (CASSANDRA-10112)
 + * Resolve some eclipse-warnings (CASSANDRA-11086)
 + * (cqlsh) Show static columns in a different color (CASSANDRA-11059)
 + * Allow to remove TTLs on table with default_time_to_live (CASSANDRA-11207)
 +Merged from 3.0:
   * Disallow creating view with a static column (CASSANDRA-11602)
   * Reduce the amount of object allocations caused by the getFunctions methods (CASSANDRA-11593)
   * Potential error replaying commitlog with smallint/tinyint/date/time types (CASSANDRA-11618)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/bdb94217/src/java/org/apache/cassandra/tools/nodetool/NetStats.java
----------------------------------------------------------------------