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 89622F67 for ; Tue, 28 Aug 2012 22:28:33 +0000 (UTC) Received: (qmail 89318 invoked by uid 500); 28 Aug 2012 22:28:33 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 89284 invoked by uid 500); 28 Aug 2012 22:28:33 -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 89183 invoked by uid 99); 28 Aug 2012 22:28:33 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 28 Aug 2012 22:28:33 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 0049121D95; Tue, 28 Aug 2012 22:28:32 +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 X-Mailer: ASF-Git Admin Mailer Subject: [2/2] git commit: clarify that PCI.MergeTask operates on Rows, not NotifyingSSTableIdentityIterators Message-Id: <20120828222833.0049121D95@tyr.zones.apache.org> Date: Tue, 28 Aug 2012 22:28:32 +0000 (UTC) clarify that PCI.MergeTask operates on Rows, not NotifyingSSTableIdentityIterators Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b0c2fa7a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b0c2fa7a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b0c2fa7a Branch: refs/heads/trunk Commit: b0c2fa7a8b6f13b11f5ad6e088e4d2490f51d476 Parents: 70754af Author: Jonathan Ellis Authored: Tue Aug 28 15:52:24 2012 -0500 Committer: Jonathan Ellis Committed: Tue Aug 28 17:27:53 2012 -0500 ---------------------------------------------------------------------- .../db/compaction/ParallelCompactionIterable.java | 18 ++++++++++----- 1 files changed, 12 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/b0c2fa7a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java index 47dc88a..f696ad4 100644 --- a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java +++ b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java @@ -174,7 +174,13 @@ public class ParallelCompactionIterable extends AbstractCompactionIterable } if (inMemory) - return new CompactedRowContainer(rows.get(0).getKey(), executor.submit(new MergeTask(new ArrayList(rows)))); + { + // caller will re-use rows List, so make ourselves a copy + List rawRows = new ArrayList(rows.size()); + for (RowContainer rowContainer : rows) + rawRows.add(rowContainer.row); + return new CompactedRowContainer(rows.get(0).getKey(), executor.submit(new MergeTask(rawRows))); + } List iterators = new ArrayList(rows.size()); for (RowContainer container : rows) @@ -189,9 +195,9 @@ public class ParallelCompactionIterable extends AbstractCompactionIterable private class MergeTask implements Callable { - private final List rows; + private final List rows; - public MergeTask(List rows) + public MergeTask(List rows) { this.rows = rows; } @@ -199,9 +205,9 @@ public class ParallelCompactionIterable extends AbstractCompactionIterable public ColumnFamily call() throws Exception { ColumnFamily cf = null; - for (RowContainer container : rows) + for (Row row : rows) { - ColumnFamily thisCF = container.row.cf; + ColumnFamily thisCF = row.cf; if (cf == null) { cf = thisCF; @@ -213,7 +219,7 @@ public class ParallelCompactionIterable extends AbstractCompactionIterable } } - return PrecompactedRow.removeDeletedAndOldShards(rows.get(0).getKey(), controller, cf); + return PrecompactedRow.removeDeletedAndOldShards(rows.get(0).key, controller, cf); } }