Change merged row counts from int to long
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3d9d5178 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3d9d5178 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3d9d5178 Branch: refs/heads/cassandra-1.2 Commit: 3d9d51780582cabc5c1233c308b71564338a7a27 Parents: 85443ec Author: Yuki Morishita <[email protected]> Authored: Tue Jan 22 15:31:35 2013 -0600 Committer: Yuki Morishita <[email protected]> Committed: Tue Jan 22 15:31:35 2013 -0600 ---------------------------------------------------------------------- .../db/compaction/AbstractCompactionIterable.java | 11 ++++++----- .../cassandra/db/compaction/CompactionTask.java | 5 +++-- 2 files changed, 9 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/3d9d5178/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java index d7b9f63..3ee992a 100644 --- a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java +++ b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java @@ -19,6 +19,7 @@ package org.apache.cassandra.db.compaction; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicLong; import org.apache.cassandra.utils.CloseableIterator; @@ -34,7 +35,7 @@ public abstract class AbstractCompactionIterable extends CompactionInfo.Holder i * array index represents (number of merged rows - 1), so index 0 is counter for no merge (1 row), * index 1 is counter for 2 rows merged, and so on. */ - protected final AtomicInteger[] mergeCounters; + protected final AtomicLong[] mergeCounters; public AbstractCompactionIterable(CompactionController controller, OperationType type, List<ICompactionScanner> scanners) { @@ -47,9 +48,9 @@ public abstract class AbstractCompactionIterable extends CompactionInfo.Holder i for (ICompactionScanner scanner : scanners) bytes += scanner.getLengthInBytes(); this.totalBytes = bytes; - mergeCounters = new AtomicInteger[scanners.size()]; + mergeCounters = new AtomicLong[scanners.size()]; for (int i = 0; i < mergeCounters.length; i++) - mergeCounters[i] = new AtomicInteger(); + mergeCounters[i] = new AtomicLong(); } public CompactionInfo getCompactionInfo() @@ -66,9 +67,9 @@ public abstract class AbstractCompactionIterable extends CompactionInfo.Holder i mergeCounters[rows - 1].incrementAndGet(); } - public int[] getMergedRowCounts() + public long[] getMergedRowCounts() { - int[] counters = new int[mergeCounters.length]; + long[] counters = new long[mergeCounters.length]; for (int i = 0; i < counters.length; i++) counters[i] = mergeCounters[i].get(); return counters; http://git-wip-us.apache.org/repos/asf/cassandra/blob/3d9d5178/src/java/org/apache/cassandra/db/compaction/CompactionTask.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionTask.java b/src/java/org/apache/cassandra/db/compaction/CompactionTask.java index bd1d58d..8aa5aca 100644 --- a/src/java/org/apache/cassandra/db/compaction/CompactionTask.java +++ b/src/java/org/apache/cassandra/db/compaction/CompactionTask.java @@ -261,10 +261,11 @@ public class CompactionTask extends AbstractCompactionTask double mbps = dTime > 0 ? (double)endsize/(1024*1024)/((double)dTime/1000) : 0; long totalSourceRows = 0; String mergeSummary = ""; - for (int i = 0; i < ci.getMergedRowCounts().length; i++) + long[] counts = ci.getMergedRowCounts(); + for (int i = 0; i < counts.length; i++) { int rows = i + 1; - int count = ci.getMergedRowCounts()[i]; + long count = counts[i]; totalSourceRows += rows * count; mergeSummary += String.format("%d:%d, ", rows, count); }
