You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by yu...@apache.org on 2013/08/21 22:36:42 UTC
[01/10] git commit: Fix LCS L0 compaction may overlap in L1
Updated Branches:
refs/heads/cassandra-1.2 572cddc30 -> ad8f88e21
refs/heads/cassandra-2.0 9e2961964 -> d6e0ca043
refs/heads/cassandra-2.0.0 9dc4c16d7 -> 7d3eef823
refs/heads/trunk 487e3de05 -> c43a59ccc
Fix LCS L0 compaction may overlap in L1
patch by yukim; reviewed by jbellis for CASSANDRA-5907
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ad8f88e2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ad8f88e2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ad8f88e2
Branch: refs/heads/cassandra-1.2
Commit: ad8f88e21213982e3eb5137723a3885726a567e8
Parents: 572cddc
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:30:16 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:30:16 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 7 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 1ffec7d..e1c963c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -25,6 +25,7 @@
* 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)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
index f62c796..fc10883 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
@@ -530,13 +530,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
[10/10] git commit: Merge branch 'cassandra-2.0' into trunk
Posted by yu...@apache.org.
Merge branch 'cassandra-2.0' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c43a59cc
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c43a59cc
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c43a59cc
Branch: refs/heads/trunk
Commit: c43a59cccadd48c005cb4da618f6140b46d829f0
Parents: 487e3de d6e0ca0
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:36:15 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:36:15 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 3 +++
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/c43a59cc/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/c43a59cc/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
index 7a0a927,597b851..e46c060
--- a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
@@@ -457,13 -457,13 +457,13 @@@ public class LeveledManifes
// 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())
++ if (candidates.size() < 2 || !overlapping(candidates, compactingL0).isEmpty())
+ return Collections.emptyList();
+ else
+ return candidates;
}
// for non-L0 compactions, pick up where we left off last time
[08/10] git commit: Merge branch 'cassandra-2.0.0' into cassandra-2.0
Posted by yu...@apache.org.
Merge branch 'cassandra-2.0.0' into cassandra-2.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d6e0ca04
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d6e0ca04
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d6e0ca04
Branch: refs/heads/trunk
Commit: d6e0ca043de2f64bda10470acf12c9d627b206fe
Parents: 9e29619 7d3eef8
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:35:19 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:35:19 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 3 +++
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d6e0ca04/CHANGES.txt
----------------------------------------------------------------------
[03/10] git commit: Fix LCS L0 compaction may overlap in L1
Posted by yu...@apache.org.
Fix LCS L0 compaction may overlap in L1
patch by yukim; reviewed by jbellis for CASSANDRA-5907
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ad8f88e2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ad8f88e2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ad8f88e2
Branch: refs/heads/cassandra-2.0
Commit: ad8f88e21213982e3eb5137723a3885726a567e8
Parents: 572cddc
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:30:16 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:30:16 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 7 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 1ffec7d..e1c963c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -25,6 +25,7 @@
* 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)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
index f62c796..fc10883 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
@@ -530,13 +530,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
[05/10] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0.0
Posted by yu...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0.0
Conflicts:
CHANGES.txt
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7d3eef82
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7d3eef82
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7d3eef82
Branch: refs/heads/cassandra-2.0
Commit: 7d3eef8233beb27642bdb8edd43eb9bf3eef5992
Parents: 9dc4c16 ad8f88e
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:35:05 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:35:05 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 3 +++
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d3eef82/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index fdee261,e1c963c..7af02da
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -47,7 -16,16 +47,10 @@@ Merged from 1.2
* Future-proof inter-major-version schema migrations (CASSANDRA-5845)
* (Hadoop) add CqlPagingRecordReader support for ReversedType in Thrift table
(CASSANDRA-5718)
- * Add KeyCacheHitRate metric to CF metrics (CASSANDRA-5868)
- * cqlsh: add support for multiline comments (CASSANDRA-5798)
- * Handle CQL3 SELECT duplicate IN restrictions on clustering columns
- (CASSANDRA-5856)
- * Don't announce schema version until we've loaded the changes locally
- (CASSANDRA-5904)
* 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)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d3eef82/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
[06/10] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0.0
Posted by yu...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0.0
Conflicts:
CHANGES.txt
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7d3eef82
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7d3eef82
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7d3eef82
Branch: refs/heads/cassandra-2.0.0
Commit: 7d3eef8233beb27642bdb8edd43eb9bf3eef5992
Parents: 9dc4c16 ad8f88e
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:35:05 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:35:05 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 3 +++
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d3eef82/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index fdee261,e1c963c..7af02da
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -47,7 -16,16 +47,10 @@@ Merged from 1.2
* Future-proof inter-major-version schema migrations (CASSANDRA-5845)
* (Hadoop) add CqlPagingRecordReader support for ReversedType in Thrift table
(CASSANDRA-5718)
- * Add KeyCacheHitRate metric to CF metrics (CASSANDRA-5868)
- * cqlsh: add support for multiline comments (CASSANDRA-5798)
- * Handle CQL3 SELECT duplicate IN restrictions on clustering columns
- (CASSANDRA-5856)
- * Don't announce schema version until we've loaded the changes locally
- (CASSANDRA-5904)
* 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)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d3eef82/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
[07/10] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0.0
Posted by yu...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0.0
Conflicts:
CHANGES.txt
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7d3eef82
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7d3eef82
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7d3eef82
Branch: refs/heads/trunk
Commit: 7d3eef8233beb27642bdb8edd43eb9bf3eef5992
Parents: 9dc4c16 ad8f88e
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:35:05 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:35:05 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 3 +++
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d3eef82/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index fdee261,e1c963c..7af02da
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -47,7 -16,16 +47,10 @@@ Merged from 1.2
* Future-proof inter-major-version schema migrations (CASSANDRA-5845)
* (Hadoop) add CqlPagingRecordReader support for ReversedType in Thrift table
(CASSANDRA-5718)
- * Add KeyCacheHitRate metric to CF metrics (CASSANDRA-5868)
- * cqlsh: add support for multiline comments (CASSANDRA-5798)
- * Handle CQL3 SELECT duplicate IN restrictions on clustering columns
- (CASSANDRA-5856)
- * Don't announce schema version until we've loaded the changes locally
- (CASSANDRA-5904)
* 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)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d3eef82/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
[02/10] git commit: Fix LCS L0 compaction may overlap in L1
Posted by yu...@apache.org.
Fix LCS L0 compaction may overlap in L1
patch by yukim; reviewed by jbellis for CASSANDRA-5907
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ad8f88e2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ad8f88e2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ad8f88e2
Branch: refs/heads/cassandra-2.0.0
Commit: ad8f88e21213982e3eb5137723a3885726a567e8
Parents: 572cddc
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:30:16 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:30:16 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 7 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 1ffec7d..e1c963c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -25,6 +25,7 @@
* 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)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
index f62c796..fc10883 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
@@ -530,13 +530,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
[04/10] git commit: Fix LCS L0 compaction may overlap in L1
Posted by yu...@apache.org.
Fix LCS L0 compaction may overlap in L1
patch by yukim; reviewed by jbellis for CASSANDRA-5907
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ad8f88e2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ad8f88e2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ad8f88e2
Branch: refs/heads/trunk
Commit: ad8f88e21213982e3eb5137723a3885726a567e8
Parents: 572cddc
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:30:16 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:30:16 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 7 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 1ffec7d..e1c963c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -25,6 +25,7 @@
* 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)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ad8f88e2/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
index f62c796..fc10883 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
@@ -530,13 +530,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
[09/10] git commit: Merge branch 'cassandra-2.0.0' into cassandra-2.0
Posted by yu...@apache.org.
Merge branch 'cassandra-2.0.0' into cassandra-2.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d6e0ca04
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d6e0ca04
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d6e0ca04
Branch: refs/heads/cassandra-2.0
Commit: d6e0ca043de2f64bda10470acf12c9d627b206fe
Parents: 9e29619 7d3eef8
Author: Yuki Morishita <yu...@apache.org>
Authored: Wed Aug 21 15:35:19 2013 -0500
Committer: Yuki Morishita <yu...@apache.org>
Committed: Wed Aug 21 15:35:19 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 3 +++
.../apache/cassandra/db/compaction/LeveledManifest.java | 12 ++++++------
2 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d6e0ca04/CHANGES.txt
----------------------------------------------------------------------