You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ma...@apache.org on 2017/12/11 08:07:18 UTC

[10/10] cassandra git commit: Merge branch 'cassandra-3.11' into trunk

Merge branch 'cassandra-3.11' into trunk


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

Branch: refs/heads/trunk
Commit: 1cb050922c7cc181e7c4e90fa2a52c23a87d5fc0
Parents: 7815014 817f3c2
Author: Marcus Eriksson <ma...@apache.org>
Authored: Mon Dec 11 09:04:46 2017 +0100
Committer: Marcus Eriksson <ma...@apache.org>
Committed: Mon Dec 11 09:04:46 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/1cb05092/CHANGES.txt
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/1cb05092/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index e5c8269,638e74c..c57b37a
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@@ -1094,14 -1095,15 +1094,15 @@@ public class CompactionManager implemen
  
          int nowInSec = FBUtilities.nowInSeconds();
          try (SSTableRewriter writer = SSTableRewriter.construct(cfs, txn, false, sstable.maxDataAge);
 -             ISSTableScanner scanner = cleanupStrategy.getScanner(sstable, null);
 +             ISSTableScanner scanner = cleanupStrategy.getScanner(sstable);
               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));
 +            StatsMetadata metadata = sstable.getSSTableMetadata();
 +            writer.switchWriter(createWriter(cfs, compactionFileLocation, expectedBloomFilterSize, metadata.repairedAt, metadata.pendingRepair, sstable, txn));
              long lastBytesScanned = 0;
  
 -
              while (ci.hasNext())
              {
                  if (ci.isStopRequested())

http://git-wip-us.apache.org/repos/asf/cassandra/blob/1cb05092/src/java/org/apache/cassandra/db/compaction/Scrubber.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/1cb05092/src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
index 47c3fca,73626d3..24de918
--- a/src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
+++ b/src/java/org/apache/cassandra/io/sstable/IndexSummaryRedistribution.java
@@@ -39,9 -40,9 +39,10 @@@ 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.schema.TableId;
  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;
  
@@@ -112,13 -125,16 +113,16 @@@ public class IndexSummaryRedistributio
  
          logger.trace("Index summaries for compacting SSTables are using {} MB of space",
                       (memoryPoolBytes - remainingBytes) / 1024.0 / 1024.0);
-         List<SSTableReader> newSSTables = adjustSamplingLevels(sstablesByHotness, transactions, totalReadsPerSec, remainingBytes);
- 
-         for (LifecycleTransaction txn : transactions.values())
-             txn.finish();
+         List<SSTableReader> newSSTables;
+         try (Refs<SSTableReader> refs = Refs.ref(sstablesByHotness))
+         {
+             newSSTables = adjustSamplingLevels(sstablesByHotness, transactions, totalReadsPerSec, remainingBytes);
  
+             for (LifecycleTransaction txn : transactions.values())
+                 txn.finish();
+         }
          total = 0;
 -        for (SSTableReader sstable : Iterables.concat(compacting, oldFormatSSTables, newSSTables))
 +        for (SSTableReader sstable : Iterables.concat(compacting, newSSTables))
              total += sstable.getIndexSummaryOffHeapSize();
          logger.trace("Completed resizing of index summaries; current approximate memory used: {}",
                       FBUtilities.prettyPrintMemory(total));


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