Author: jbellis Date: Thu Oct 6 21:11:13 2011 New Revision: 1179854 URL: http://svn.apache.org/viewvc?rev=1179854&view=rev Log: fix estimated leveled compaction tasks patch by jbellis
Modified: cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java Modified: cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java?rev=1179854&r1=1179853&r2=1179854&view=diff ============================================================================== --- cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java (original) +++ cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java Thu Oct 6 21:11:13 2011 @@ -239,7 +239,7 @@ public class LeveledManifest // L0 gets a special case that if we don't have anything more important to do, // we'll go ahead and compact even just one sstable - if (score > 1 || i == 0) + if (score > 1.001 || i == 0) { Collection<SSTableReader> candidates = getCandidatesFor(i); if (logger.isDebugEnabled()) @@ -427,7 +427,7 @@ public class LeveledManifest List<SSTableReader> sstables = generations[i]; if (sstables.isEmpty()) continue; - n += (SSTableReader.getTotalBytes(sstables) - maxBytesForLevel(i)) / maxSSTableSizeInMB; + n += Math.max(0L, SSTableReader.getTotalBytes(sstables) - maxBytesForLevel(i)) / (maxSSTableSizeInMB * 1024 * 1024); } return n; }