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/817f3c28
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/817f3c28
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/817f3c28

Branch: refs/heads/cassandra-3.11
Commit: 817f3c282debd8f00a7803bee4950cdc73ec7fcc
Parents: 16bcbb9 d7329a6
Author: Marcus Eriksson <marc...@apache.org>
Authored: Mon Dec 11 09:03:55 2017 +0100
Committer: Marcus Eriksson <marc...@apache.org>
Committed: Mon Dec 11 09:03:55 2017 +0100

----------------------------------------------------------------------
 CHANGES.txt                                             |  2 ++
 .../cassandra/db/compaction/CompactionManager.java      |  1 +
 .../org/apache/cassandra/db/compaction/Scrubber.java    |  4 +++-
 .../io/sstable/IndexSummaryRedistribution.java          | 12 ++++++++----
 4 files changed, 14 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/817f3c28/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index b7a6e14,8cff716..5faede2
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -26,22 -16,11 +26,24 @@@ Merged from 3.0
   * Provide a JMX call to sync schema with local storage (CASSANDRA-13954)
   * Mishandling of cells for removed/dropped columns when reading legacy files 
(CASSANDRA-13939)
   * Deserialise sstable metadata in nodetool verify (CASSANDRA-13922)
+ Merged from 2.2:
+  * Grab refs during scrub/index redistribution/cleanup (CASSANDRA-13873)
  
  
 -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:
   * 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/817f3c28/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index 4030384,eaeb089..638e74c
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@@ -1085,18 -865,16 +1085,19 @@@ public class CompactionManager implemen
  
          logger.info("Cleaning up {}", sstable);
  
 -        File compactionFileLocation = 
cfs.getDirectories().getWriteableLocationAsFile(cfs.getExpectedCompactedFileSize(txn.originals(),
 OperationType.CLEANUP));
 -        if (compactionFileLocation == null)
 -            throw new IOException("disk full");
 +        File compactionFileLocation = sstable.descriptor.directory;
 +        RateLimiter limiter = getRateLimiter();
 +        double compressionRatio = sstable.getCompressionRatio();
 +        if (compressionRatio == MetadataCollector.NO_COMPRESSION_RATIO)
 +            compressionRatio = 1.0;
  
          List<SSTableReader> finished;
 +
          int nowInSec = FBUtilities.nowInSeconds();
 -        try (SSTableRewriter writer = SSTableRewriter.construct(cfs, txn, 
false, sstable.maxDataAge, false);
 -             ISSTableScanner scanner = cleanupStrategy.getScanner(sstable, 
getRateLimiter());
 +        try (SSTableRewriter writer = SSTableRewriter.construct(cfs, txn, 
false, sstable.maxDataAge);
 +             ISSTableScanner scanner = cleanupStrategy.getScanner(sstable, 
null);
               CompactionController controller = new CompactionController(cfs, 
txn.originals(), getDefaultGcBefore(cfs, nowInSec));
+              Refs<SSTableReader> refs = 
Refs.ref(Collections.singleton(sstable));
               CompactionIterator ci = new 
CompactionIterator(OperationType.CLEANUP, Collections.singletonList(scanner), 
controller, nowInSec, UUIDGen.getTimeUUID(), metrics))
          {
              writer.switchWriter(createWriter(cfs, compactionFileLocation, 
expectedBloomFilterSize, sstable.getSSTableMetadata().repairedAt, sstable, 
txn));

http://git-wip-us.apache.org/repos/asf/cassandra/blob/817f3c28/src/java/org/apache/cassandra/db/compaction/Scrubber.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/compaction/Scrubber.java
index 4635824,c8e0c53..c189c0b
--- a/src/java/org/apache/cassandra/db/compaction/Scrubber.java
+++ b/src/java/org/apache/cassandra/db/compaction/Scrubber.java
@@@ -141,8 -145,9 +142,9 @@@ public class Scrubber implements Closea
      {
          List<SSTableReader> finished = new ArrayList<>();
          boolean completed = false;
 -        outputHandler.output(String.format("Scrubbing %s (%s bytes)", 
sstable, dataFile.length()));
 -        try (SSTableRewriter writer = SSTableRewriter.construct(cfs, 
transaction, false, sstable.maxDataAge, transaction.isOffline());
 +        outputHandler.output(String.format("Scrubbing %s (%s)", sstable, 
FBUtilities.prettyPrintMemory(dataFile.length())));
-         try (SSTableRewriter writer = SSTableRewriter.construct(cfs, 
transaction, false, sstable.maxDataAge))
++        try (SSTableRewriter writer = SSTableRewriter.construct(cfs, 
transaction, false, sstable.maxDataAge);
+              Refs<SSTableReader> refs = 
Refs.ref(Collections.singleton(sstable)))
          {
              nextIndexKey = indexAvailable() ? 
ByteBufferUtil.readWithShortLength(indexFile) : null;
              if (indexAvailable())

http://git-wip-us.apache.org/repos/asf/cassandra/blob/817f3c28/src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
----------------------------------------------------------------------
diff --cc 
src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
index 8fb4835,ebe98e5..73626d3
--- a/src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
+++ b/src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
@@@ -40,8 -40,8 +40,9 @@@ import org.apache.cassandra.db.compacti
  import org.apache.cassandra.db.compaction.OperationType;
  import org.apache.cassandra.db.lifecycle.LifecycleTransaction;
  import org.apache.cassandra.io.sstable.format.SSTableReader;
 +import org.apache.cassandra.utils.FBUtilities;
  import org.apache.cassandra.utils.Pair;
+ import org.apache.cassandra.utils.concurrent.Refs;
  
  import static 
org.apache.cassandra.io.sstable.Downsampling.BASE_SAMPLING_LEVEL;
  


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

Reply via email to