Merge branch 'cassandra-1.2' into cassandra-2.0.0

Conflicts:
	CHANGES.txt
This commit is contained in:
Yuki Morishita 2013-08-21 15:35:05 -05:00
commit 7d3eef8233
2 changed files with 9 additions and 6 deletions

View File

@ -48,6 +48,9 @@ Merged from 1.2:
* (Hadoop) add CqlPagingRecordReader support for ReversedType in Thrift table
(CASSANDRA-5718)
* Add -no-snapshot option to scrub (CASSANDRA-5891)
* Fix to support off heap bloom filters size greater than 2 GB (CASSANDRA-5903)
* Properly handle parsing huge map and set literals (CASSANDRA-5893)
* Fix LCS L0 compaction may overlap in L1 (CASSANDRA-5907)
Merged from 1.1:
* Correctly validate sparse composite cells in scrub (CASSANDRA-5855)

View File

@ -457,13 +457,13 @@ public class LeveledManifest
// if the overlapping ones are already busy in a compaction, leave it out.
// TODO try to find a set of L0 sstables that only overlaps with non-busy L1 sstables
candidates = Sets.union(candidates, overlapping(candidates, generations[1]));
// check overlap with L0 compacting sstables to make sure we are not generating overlap in L1.
Iterable<SSTableReader> compactingL0 = Iterables.filter(generations[0], Predicates.in(compacting));
if (!Sets.intersection(candidates, compacting).isEmpty() || !overlapping(candidates, compactingL0).isEmpty())
return Collections.emptyList();
}
return candidates.size() > 1 ? candidates : Collections.<SSTableReader>emptyList();
// check overlap with L0 compacting sstables to make sure we are not generating overlap in L1.
Iterable<SSTableReader> compactingL0 = Iterables.filter(generations[0], Predicates.in(compacting));
if (candidates.size() < 2 || !Sets.intersection(candidates, compacting).isEmpty() || !overlapping(candidates, compactingL0).isEmpty())
return Collections.emptyList();
else
return candidates;
}
// for non-L0 compactions, pick up where we left off last time