Merge branch 'cassandra-3.0' into cassandra-3.11

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

Branch: refs/heads/cassandra-3.11
Commit: f5bc42996b671ae26793691af3fd06fbcabbe4cc
Parents: 983c72a e400b97
Author: Marcus Eriksson <marc...@apache.org>
Authored: Wed Oct 4 08:18:36 2017 +0200
Committer: Marcus Eriksson <marc...@apache.org>
Committed: Wed Oct 4 08:19:15 2017 +0200

----------------------------------------------------------------------
 CHANGES.txt                                     |  1 +
 .../cassandra/db/compaction/Verifier.java       | 31 ++++++++++++++++----
 .../org/apache/cassandra/db/VerifyTest.java     | 26 ++++++++++++++++
 3 files changed, 53 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/f5bc4299/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index aca219e,df05f7f..4a22af4
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,17 -1,8 +1,18 @@@
 -3.0.16
 -  * Deserialise sstable metadata in nodetool verify (CASSANDRA-13922)
 -
 -
 -3.0.15
 +3.11.1
 + * Fix the computation of cdc_total_space_in_mb for exabyte filesystems 
(CASSANDRA-13808)
 + * AbstractTokenTreeBuilder#serializedSize returns wrong value when there is 
a single leaf and overflow collisions (CASSANDRA-13869)
 + * Add a compaction option to TWCS to ignore sstables overlapping checks 
(CASSANDRA-13418)
 + * BTree.Builder memory leak (CASSANDRA-13754)
 + * Revert CASSANDRA-10368 of supporting non-pk column filtering due to 
correctness (CASSANDRA-13798)
 + * Add a skip read validation flag to cassandra-stress (CASSANDRA-13772)
 + * Fix cassandra-stress hang issues when an error during cluster connection 
happens (CASSANDRA-12938)
 + * Better bootstrap failure message when blocked by (potential) range 
movement (CASSANDRA-13744)
 + * "ignore" option is ignored in sstableloader (CASSANDRA-13721)
 + * Deadlock in AbstractCommitLogSegmentManager (CASSANDRA-13652)
 + * Duplicate the buffer before passing it to analyser in SASI operation 
(CASSANDRA-13512)
 + * Properly evict pstmts from prepared statements cache (CASSANDRA-13641)
 +Merged from 3.0:
++ * Deserialise sstable metadata in nodetool verify (CASSANDRA-13922)
   * Improve TRUNCATE performance (CASSANDRA-13909)
   * Implement short read protection on partition boundaries (CASSANDRA-13595)
   * Fix ISE thrown by UPI.Serializer.hasNext() for some SELECT queries 
(CASSANDRA-13911)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f5bc4299/src/java/org/apache/cassandra/db/compaction/Verifier.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/compaction/Verifier.java
index df659e4,68088b3..4c07bb6
--- a/src/java/org/apache/cassandra/db/compaction/Verifier.java
+++ b/src/java/org/apache/cassandra/db/compaction/Verifier.java
@@@ -88,7 -89,21 +90,21 @@@ public class Verifier implements Closea
      {
          long rowStart = 0;
  
 -        outputHandler.output(String.format("Verifying %s (%s bytes)", 
sstable, dataFile.length()));
 +        outputHandler.output(String.format("Verifying %s (%s)", sstable, 
FBUtilities.prettyPrintMemory(dataFile.length())));
+         outputHandler.output(String.format("Deserializing sstable metadata 
for %s ", sstable));
+         try
+         {
+             EnumSet<MetadataType> types = EnumSet.of(MetadataType.VALIDATION, 
MetadataType.STATS, MetadataType.HEADER);
+             Map<MetadataType, MetadataComponent> sstableMetadata = 
sstable.descriptor.getMetadataSerializer().deserialize(sstable.descriptor, 
types);
+             if (sstableMetadata.containsKey(MetadataType.VALIDATION) &&
+                 
!((ValidationMetadata)sstableMetadata.get(MetadataType.VALIDATION)).partitioner.equals(sstable.getPartitioner().getClass().getCanonicalName()))
+                 throw new IOException("Partitioner does not match validation 
metadata");
+         }
+         catch (Throwable t)
+         {
+             outputHandler.debug(t.getMessage());
+             markAndThrow(false);
+         }
          outputHandler.output(String.format("Checking computed hash of %s ", 
sstable));
  
  
@@@ -187,8 -202,8 +203,8 @@@
                      if (key == null || dataSize > dataFile.length())
                          markAndThrow();
  
-                     //mimic the scrub read path
+                     //mimic the scrub read path, intentionally unused
 -                    try (UnfilteredRowIterator iterator = new 
SSTableIdentityIterator(sstable, dataFile, key))
 +                    try (UnfilteredRowIterator iterator = 
SSTableIdentityIterator.create(sstable, dataFile, key))
                      {
                      }
  

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f5bc4299/test/unit/org/apache/cassandra/db/VerifyTest.java
----------------------------------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to