You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sa...@apache.org on 2016/03/16 12:18:45 UTC

[1/6] cassandra git commit: SSTableExport supports secondary index tables

Repository: cassandra
Updated Branches:
  refs/heads/cassandra-3.0 dcc57d0bb -> 0a5e2204c
  refs/heads/cassandra-3.5 fc6b2b3d4 -> e36d2333c
  refs/heads/trunk df58c1f4d -> 39d5e6aae


SSTableExport supports secondary index tables

Patch by Sam Tunnicliffe; reviewed by Yuki Morishita for CASSANDRA-11330


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

Branch: refs/heads/cassandra-3.0
Commit: 0a5e2204ce74390bfbeb3fa3d74914cf47a13258
Parents: dcc57d0
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Mar 9 18:59:20 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Wed Mar 16 11:07:24 2016 +0000

----------------------------------------------------------------------
 CHANGES.txt                                           |  1 +
 .../org/apache/cassandra/db/SerializationHeader.java  |  2 +-
 .../org/apache/cassandra/tools/SSTableExport.java     | 14 ++++++++------
 3 files changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 87691f9..28de247 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.5
+ * SSTableExport supports secondary index tables (CASSANDRA-11330)
  * Fix sstabledump to include missing info in debug output (CASSANDRA-11321)
  * Establish and implement canonical bulk reading workload(s) (CASSANDRA-10331)
  * Fix paging for IN queries on tables without clustering columns (CASSANDRA-11208)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/src/java/org/apache/cassandra/db/SerializationHeader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/SerializationHeader.java b/src/java/org/apache/cassandra/db/SerializationHeader.java
index 6aee0b6..6e03756 100644
--- a/src/java/org/apache/cassandra/db/SerializationHeader.java
+++ b/src/java/org/apache/cassandra/db/SerializationHeader.java
@@ -362,7 +362,7 @@ public class SerializationHeader
                                  keyType, clusteringTypes, staticColumns, regularColumns, stats);
         }
 
-        public AbstractType<?> getKetType()
+        public AbstractType<?> getKeyType()
         {
             return keyType;
         }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/SSTableExport.java b/src/java/org/apache/cassandra/tools/SSTableExport.java
index 3ee9193..fd3b9cb 100644
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@ -35,10 +35,9 @@ import org.apache.cassandra.db.PartitionPosition;
 import org.apache.cassandra.db.SerializationHeader;
 import org.apache.cassandra.db.marshal.UTF8Type;
 import org.apache.cassandra.db.rows.UnfilteredRowIterator;
-import org.apache.cassandra.dht.AbstractBounds;
-import org.apache.cassandra.dht.Bounds;
-import org.apache.cassandra.dht.IPartitioner;
+import org.apache.cassandra.dht.*;
 import org.apache.cassandra.exceptions.ConfigurationException;
+import org.apache.cassandra.index.SecondaryIndexManager;
 import org.apache.cassandra.io.sstable.Descriptor;
 import org.apache.cassandra.io.sstable.ISSTableScanner;
 import org.apache.cassandra.io.sstable.KeyIterator;
@@ -100,7 +99,10 @@ public class SSTableExport
         ValidationMetadata validationMetadata = (ValidationMetadata) sstableMetadata.get(MetadataType.VALIDATION);
         SerializationHeader.Component header = (SerializationHeader.Component) sstableMetadata.get(MetadataType.HEADER);
 
-        IPartitioner partitioner = FBUtilities.newPartitioner(validationMetadata.partitioner);
+        IPartitioner partitioner = SecondaryIndexManager.isIndexColumnFamily(desc.cfname)
+                                   ? new LocalPartitioner(header.getKeyType())
+                                   : FBUtilities.newPartitioner(validationMetadata.partitioner);
+
         CFMetaData.Builder builder = CFMetaData.Builder.create("keyspace", "table").withPartitioner(partitioner);
         header.getStaticColumns().entrySet().stream()
                 .forEach(entry -> {
@@ -112,7 +114,7 @@ public class SSTableExport
                     ColumnIdentifier ident = ColumnIdentifier.getInterned(UTF8Type.instance.getString(entry.getKey()), true);
                     builder.addRegularColumn(ident, entry.getValue());
                 });
-        builder.addPartitionKey("PartitionKey", header.getKetType());
+        builder.addPartitionKey("PartitionKey", header.getKeyType());
         for (int i = 0; i < header.getClusteringTypes().size(); i++)
         {
             builder.addClusteringColumn("clustering" + (i > 0 ? i : ""), header.getClusteringTypes().get(i));
@@ -250,4 +252,4 @@ public class SSTableExport
         String header = "Dump contents of given SSTable to standard output in JSON format.";
         new HelpFormatter().printHelp(usage, header, options, "");
     }
-}
\ No newline at end of file
+}


[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5

Posted by sa...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.5


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

Branch: refs/heads/trunk
Commit: e36d2333c770d26c03ce7a5ca99676ac1f75c0b8
Parents: fc6b2b3 0a5e220
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Mar 16 11:15:57 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Wed Mar 16 11:15:57 2016 +0000

----------------------------------------------------------------------
 CHANGES.txt                                           |  1 +
 .../org/apache/cassandra/db/SerializationHeader.java  |  2 +-
 .../org/apache/cassandra/tools/SSTableExport.java     | 14 ++++++++------
 .../apache/cassandra/tools/SSTableMetadataViewer.java |  2 +-
 4 files changed, 11 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e36d2333/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 7acb24d,28de247..1ff4e6d
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,5 -1,5 +1,6 @@@
 -3.0.5
 +3.5
 +Merged from 3.0:
+  * SSTableExport supports secondary index tables (CASSANDRA-11330)
   * Fix sstabledump to include missing info in debug output (CASSANDRA-11321)
   * Establish and implement canonical bulk reading workload(s) (CASSANDRA-10331)
   * Fix paging for IN queries on tables without clustering columns (CASSANDRA-11208)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e36d2333/src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
index 25e6a8f,3728d34..04e148a
--- a/src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
+++ b/src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
@@@ -121,30 -82,6 +121,30 @@@ public class SSTableMetadataViewe
                  {
                      out.printf("Estimated cardinality: %s%n", compaction.cardinalityEstimator.cardinality());
                  }
 +                if (header != null)
 +                {
 +                    EncodingStats encodingStats = header.getEncodingStats();
-                     AbstractType<?> keyType = header.getKetType();
++                    AbstractType<?> keyType = header.getKeyType();
 +                    List<AbstractType<?>> clusteringTypes = header.getClusteringTypes();
 +                    Map<ByteBuffer, AbstractType<?>> staticColumns = header.getStaticColumns();
 +                    Map<String, String> statics = staticColumns.entrySet().stream()
 +                                                               .collect(Collectors.toMap(
 +                                                                e -> UTF8Type.instance.getString(e.getKey()),
 +                                                                e -> e.getValue().toString()));
 +                    Map<ByteBuffer, AbstractType<?>> regularColumns = header.getRegularColumns();
 +                    Map<String, String> regulars = regularColumns.entrySet().stream()
 +                                                                 .collect(Collectors.toMap(
 +                                                                 e -> UTF8Type.instance.getString(e.getKey()),
 +                                                                 e -> e.getValue().toString()));
 +
 +                    out.printf("EncodingStats minTTL: %s%n", encodingStats.minTTL);
 +                    out.printf("EncodingStats minLocalDeletionTime: %s%n", encodingStats.minLocalDeletionTime);
 +                    out.printf("EncodingStats minTimestamp: %s%n", encodingStats.minTimestamp);
 +                    out.printf("KeyType: %s%n", keyType.toString());
 +                    out.printf("ClusteringTypes: %s%n", clusteringTypes.toString());
 +                    out.printf("StaticColumns: {%s}%n", FBUtilities.toString(statics));
 +                    out.printf("RegularColumns: {%s}%n", FBUtilities.toString(regulars));
 +                }
              }
              else
              {


[3/6] cassandra git commit: SSTableExport supports secondary index tables

Posted by sa...@apache.org.
SSTableExport supports secondary index tables

Patch by Sam Tunnicliffe; reviewed by Yuki Morishita for CASSANDRA-11330


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

Branch: refs/heads/trunk
Commit: 0a5e2204ce74390bfbeb3fa3d74914cf47a13258
Parents: dcc57d0
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Mar 9 18:59:20 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Wed Mar 16 11:07:24 2016 +0000

----------------------------------------------------------------------
 CHANGES.txt                                           |  1 +
 .../org/apache/cassandra/db/SerializationHeader.java  |  2 +-
 .../org/apache/cassandra/tools/SSTableExport.java     | 14 ++++++++------
 3 files changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 87691f9..28de247 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.5
+ * SSTableExport supports secondary index tables (CASSANDRA-11330)
  * Fix sstabledump to include missing info in debug output (CASSANDRA-11321)
  * Establish and implement canonical bulk reading workload(s) (CASSANDRA-10331)
  * Fix paging for IN queries on tables without clustering columns (CASSANDRA-11208)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/src/java/org/apache/cassandra/db/SerializationHeader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/SerializationHeader.java b/src/java/org/apache/cassandra/db/SerializationHeader.java
index 6aee0b6..6e03756 100644
--- a/src/java/org/apache/cassandra/db/SerializationHeader.java
+++ b/src/java/org/apache/cassandra/db/SerializationHeader.java
@@ -362,7 +362,7 @@ public class SerializationHeader
                                  keyType, clusteringTypes, staticColumns, regularColumns, stats);
         }
 
-        public AbstractType<?> getKetType()
+        public AbstractType<?> getKeyType()
         {
             return keyType;
         }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/SSTableExport.java b/src/java/org/apache/cassandra/tools/SSTableExport.java
index 3ee9193..fd3b9cb 100644
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@ -35,10 +35,9 @@ import org.apache.cassandra.db.PartitionPosition;
 import org.apache.cassandra.db.SerializationHeader;
 import org.apache.cassandra.db.marshal.UTF8Type;
 import org.apache.cassandra.db.rows.UnfilteredRowIterator;
-import org.apache.cassandra.dht.AbstractBounds;
-import org.apache.cassandra.dht.Bounds;
-import org.apache.cassandra.dht.IPartitioner;
+import org.apache.cassandra.dht.*;
 import org.apache.cassandra.exceptions.ConfigurationException;
+import org.apache.cassandra.index.SecondaryIndexManager;
 import org.apache.cassandra.io.sstable.Descriptor;
 import org.apache.cassandra.io.sstable.ISSTableScanner;
 import org.apache.cassandra.io.sstable.KeyIterator;
@@ -100,7 +99,10 @@ public class SSTableExport
         ValidationMetadata validationMetadata = (ValidationMetadata) sstableMetadata.get(MetadataType.VALIDATION);
         SerializationHeader.Component header = (SerializationHeader.Component) sstableMetadata.get(MetadataType.HEADER);
 
-        IPartitioner partitioner = FBUtilities.newPartitioner(validationMetadata.partitioner);
+        IPartitioner partitioner = SecondaryIndexManager.isIndexColumnFamily(desc.cfname)
+                                   ? new LocalPartitioner(header.getKeyType())
+                                   : FBUtilities.newPartitioner(validationMetadata.partitioner);
+
         CFMetaData.Builder builder = CFMetaData.Builder.create("keyspace", "table").withPartitioner(partitioner);
         header.getStaticColumns().entrySet().stream()
                 .forEach(entry -> {
@@ -112,7 +114,7 @@ public class SSTableExport
                     ColumnIdentifier ident = ColumnIdentifier.getInterned(UTF8Type.instance.getString(entry.getKey()), true);
                     builder.addRegularColumn(ident, entry.getValue());
                 });
-        builder.addPartitionKey("PartitionKey", header.getKetType());
+        builder.addPartitionKey("PartitionKey", header.getKeyType());
         for (int i = 0; i < header.getClusteringTypes().size(); i++)
         {
             builder.addClusteringColumn("clustering" + (i > 0 ? i : ""), header.getClusteringTypes().get(i));
@@ -250,4 +252,4 @@ public class SSTableExport
         String header = "Dump contents of given SSTable to standard output in JSON format.";
         new HelpFormatter().printHelp(usage, header, options, "");
     }
-}
\ No newline at end of file
+}


[6/6] cassandra git commit: Merge branch 'cassandra-3.5' into trunk

Posted by sa...@apache.org.
Merge branch 'cassandra-3.5' into trunk


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

Branch: refs/heads/trunk
Commit: 39d5e6aae56e09a3e5b193285357f7d9ad987c83
Parents: df58c1f e36d233
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Mar 16 11:16:22 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Wed Mar 16 11:16:22 2016 +0000

----------------------------------------------------------------------
 CHANGES.txt                                           |  1 +
 .../org/apache/cassandra/db/SerializationHeader.java  |  2 +-
 .../org/apache/cassandra/tools/SSTableExport.java     | 14 ++++++++------
 .../apache/cassandra/tools/SSTableMetadataViewer.java |  2 +-
 4 files changed, 11 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/39d5e6aa/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 5107e18,1ff4e6d..6897d61
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,15 -1,6 +1,16 @@@
 +3.6
 + * 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)
 +
 +
  3.5
  Merged from 3.0:
+  * SSTableExport supports secondary index tables (CASSANDRA-11330)
   * Fix sstabledump to include missing info in debug output (CASSANDRA-11321)
   * Establish and implement canonical bulk reading workload(s) (CASSANDRA-10331)
   * Fix paging for IN queries on tables without clustering columns (CASSANDRA-11208)


[2/6] cassandra git commit: SSTableExport supports secondary index tables

Posted by sa...@apache.org.
SSTableExport supports secondary index tables

Patch by Sam Tunnicliffe; reviewed by Yuki Morishita for CASSANDRA-11330


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

Branch: refs/heads/cassandra-3.5
Commit: 0a5e2204ce74390bfbeb3fa3d74914cf47a13258
Parents: dcc57d0
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Mar 9 18:59:20 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Wed Mar 16 11:07:24 2016 +0000

----------------------------------------------------------------------
 CHANGES.txt                                           |  1 +
 .../org/apache/cassandra/db/SerializationHeader.java  |  2 +-
 .../org/apache/cassandra/tools/SSTableExport.java     | 14 ++++++++------
 3 files changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 87691f9..28de247 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.5
+ * SSTableExport supports secondary index tables (CASSANDRA-11330)
  * Fix sstabledump to include missing info in debug output (CASSANDRA-11321)
  * Establish and implement canonical bulk reading workload(s) (CASSANDRA-10331)
  * Fix paging for IN queries on tables without clustering columns (CASSANDRA-11208)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/src/java/org/apache/cassandra/db/SerializationHeader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/SerializationHeader.java b/src/java/org/apache/cassandra/db/SerializationHeader.java
index 6aee0b6..6e03756 100644
--- a/src/java/org/apache/cassandra/db/SerializationHeader.java
+++ b/src/java/org/apache/cassandra/db/SerializationHeader.java
@@ -362,7 +362,7 @@ public class SerializationHeader
                                  keyType, clusteringTypes, staticColumns, regularColumns, stats);
         }
 
-        public AbstractType<?> getKetType()
+        public AbstractType<?> getKeyType()
         {
             return keyType;
         }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5e2204/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/SSTableExport.java b/src/java/org/apache/cassandra/tools/SSTableExport.java
index 3ee9193..fd3b9cb 100644
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@ -35,10 +35,9 @@ import org.apache.cassandra.db.PartitionPosition;
 import org.apache.cassandra.db.SerializationHeader;
 import org.apache.cassandra.db.marshal.UTF8Type;
 import org.apache.cassandra.db.rows.UnfilteredRowIterator;
-import org.apache.cassandra.dht.AbstractBounds;
-import org.apache.cassandra.dht.Bounds;
-import org.apache.cassandra.dht.IPartitioner;
+import org.apache.cassandra.dht.*;
 import org.apache.cassandra.exceptions.ConfigurationException;
+import org.apache.cassandra.index.SecondaryIndexManager;
 import org.apache.cassandra.io.sstable.Descriptor;
 import org.apache.cassandra.io.sstable.ISSTableScanner;
 import org.apache.cassandra.io.sstable.KeyIterator;
@@ -100,7 +99,10 @@ public class SSTableExport
         ValidationMetadata validationMetadata = (ValidationMetadata) sstableMetadata.get(MetadataType.VALIDATION);
         SerializationHeader.Component header = (SerializationHeader.Component) sstableMetadata.get(MetadataType.HEADER);
 
-        IPartitioner partitioner = FBUtilities.newPartitioner(validationMetadata.partitioner);
+        IPartitioner partitioner = SecondaryIndexManager.isIndexColumnFamily(desc.cfname)
+                                   ? new LocalPartitioner(header.getKeyType())
+                                   : FBUtilities.newPartitioner(validationMetadata.partitioner);
+
         CFMetaData.Builder builder = CFMetaData.Builder.create("keyspace", "table").withPartitioner(partitioner);
         header.getStaticColumns().entrySet().stream()
                 .forEach(entry -> {
@@ -112,7 +114,7 @@ public class SSTableExport
                     ColumnIdentifier ident = ColumnIdentifier.getInterned(UTF8Type.instance.getString(entry.getKey()), true);
                     builder.addRegularColumn(ident, entry.getValue());
                 });
-        builder.addPartitionKey("PartitionKey", header.getKetType());
+        builder.addPartitionKey("PartitionKey", header.getKeyType());
         for (int i = 0; i < header.getClusteringTypes().size(); i++)
         {
             builder.addClusteringColumn("clustering" + (i > 0 ? i : ""), header.getClusteringTypes().get(i));
@@ -250,4 +252,4 @@ public class SSTableExport
         String header = "Dump contents of given SSTable to standard output in JSON format.";
         new HelpFormatter().printHelp(usage, header, options, "");
     }
-}
\ No newline at end of file
+}


[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5

Posted by sa...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.5


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

Branch: refs/heads/cassandra-3.5
Commit: e36d2333c770d26c03ce7a5ca99676ac1f75c0b8
Parents: fc6b2b3 0a5e220
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Mar 16 11:15:57 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Wed Mar 16 11:15:57 2016 +0000

----------------------------------------------------------------------
 CHANGES.txt                                           |  1 +
 .../org/apache/cassandra/db/SerializationHeader.java  |  2 +-
 .../org/apache/cassandra/tools/SSTableExport.java     | 14 ++++++++------
 .../apache/cassandra/tools/SSTableMetadataViewer.java |  2 +-
 4 files changed, 11 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e36d2333/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 7acb24d,28de247..1ff4e6d
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,5 -1,5 +1,6 @@@
 -3.0.5
 +3.5
 +Merged from 3.0:
+  * SSTableExport supports secondary index tables (CASSANDRA-11330)
   * Fix sstabledump to include missing info in debug output (CASSANDRA-11321)
   * Establish and implement canonical bulk reading workload(s) (CASSANDRA-10331)
   * Fix paging for IN queries on tables without clustering columns (CASSANDRA-11208)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e36d2333/src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
index 25e6a8f,3728d34..04e148a
--- a/src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
+++ b/src/java/org/apache/cassandra/tools/SSTableMetadataViewer.java
@@@ -121,30 -82,6 +121,30 @@@ public class SSTableMetadataViewe
                  {
                      out.printf("Estimated cardinality: %s%n", compaction.cardinalityEstimator.cardinality());
                  }
 +                if (header != null)
 +                {
 +                    EncodingStats encodingStats = header.getEncodingStats();
-                     AbstractType<?> keyType = header.getKetType();
++                    AbstractType<?> keyType = header.getKeyType();
 +                    List<AbstractType<?>> clusteringTypes = header.getClusteringTypes();
 +                    Map<ByteBuffer, AbstractType<?>> staticColumns = header.getStaticColumns();
 +                    Map<String, String> statics = staticColumns.entrySet().stream()
 +                                                               .collect(Collectors.toMap(
 +                                                                e -> UTF8Type.instance.getString(e.getKey()),
 +                                                                e -> e.getValue().toString()));
 +                    Map<ByteBuffer, AbstractType<?>> regularColumns = header.getRegularColumns();
 +                    Map<String, String> regulars = regularColumns.entrySet().stream()
 +                                                                 .collect(Collectors.toMap(
 +                                                                 e -> UTF8Type.instance.getString(e.getKey()),
 +                                                                 e -> e.getValue().toString()));
 +
 +                    out.printf("EncodingStats minTTL: %s%n", encodingStats.minTTL);
 +                    out.printf("EncodingStats minLocalDeletionTime: %s%n", encodingStats.minLocalDeletionTime);
 +                    out.printf("EncodingStats minTimestamp: %s%n", encodingStats.minTimestamp);
 +                    out.printf("KeyType: %s%n", keyType.toString());
 +                    out.printf("ClusteringTypes: %s%n", clusteringTypes.toString());
 +                    out.printf("StaticColumns: {%s}%n", FBUtilities.toString(statics));
 +                    out.printf("RegularColumns: {%s}%n", FBUtilities.toString(regulars));
 +                }
              }
              else
              {