Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 7E5B010DB9 for ; Fri, 22 Nov 2013 23:07:43 +0000 (UTC) Received: (qmail 31855 invoked by uid 500); 22 Nov 2013 23:07:43 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 31820 invoked by uid 500); 22 Nov 2013 23:07:43 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 31811 invoked by uid 99); 22 Nov 2013 23:07:43 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 22 Nov 2013 23:07:43 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id EAAD5902903; Fri, 22 Nov 2013 23:07:42 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: jbellis@apache.org To: commits@cassandra.apache.org Date: Fri, 22 Nov 2013 23:07:42 -0000 Message-Id: X-Mailer: ASF-Git Admin Mailer Subject: [1/3] git commit: Fix setting last compacted key in the wrong level for LCS patch by Jiri Horky; reviewed by jbellis for CASSANDRA-6284 Updated Branches: refs/heads/cassandra-2.0 4fd322f53 -> 02a93025e refs/heads/trunk 87b39c8af -> a10150542 Fix setting last compacted key in the wrong level for LCS patch by Jiri Horky; reviewed by jbellis for CASSANDRA-6284 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/02a93025 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/02a93025 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/02a93025 Branch: refs/heads/cassandra-2.0 Commit: 02a93025e1db826216e4c24fbe6b5949405e4826 Parents: 4fd322f Author: Jonathan Ellis Authored: Fri Nov 22 17:06:08 2013 -0600 Committer: Jonathan Ellis Committed: Fri Nov 22 17:06:13 2013 -0600 ---------------------------------------------------------------------- CHANGES.txt | 4 ++++ .../apache/cassandra/db/compaction/LeveledManifest.java | 11 ++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/02a93025/CHANGES.txt ---------------------------------------------------------------------- diff --git a/CHANGES.txt b/CHANGES.txt index 8163c94..e85ba23 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,7 @@ +2.0.4 + * Fix setting last compacted key in the wrong level for LCS (CASSANDRA-6284) + + 2.0.3 * Fix FD leak on slice read path (CASSANDRA-6275) * Cancel read meter task when closing SSTR (CASSANDRA-6358) http://git-wip-us.apache.org/repos/asf/cassandra/blob/02a93025/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 7348c29..5690bd8 100644 --- a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java +++ b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java @@ -137,8 +137,13 @@ public class LeveledManifest // the level for the added sstables is the max of the removed ones, // plus one if the removed were all on the same level + int minLevel = Integer.MAX_VALUE; + for (SSTableReader sstable : removed) - remove(sstable); + { + int thisLevel = remove(sstable); + minLevel = Math.min(minLevel, thisLevel); + } // it's valid to do a remove w/o an add (e.g. on truncate) if (added.isEmpty()) @@ -147,12 +152,8 @@ public class LeveledManifest if (logger.isDebugEnabled()) logger.debug("Adding [{}]", toString(added)); - int minLevel = Integer.MAX_VALUE; for (SSTableReader ssTableReader : added) - { - minLevel = Math.min(minLevel, ssTableReader.getSSTableLevel()); add(ssTableReader); - } lastCompactedKeys[minLevel] = SSTable.sstableOrdering.max(added).last; }