Return-Path: Delivered-To: apmail-incubator-cassandra-commits-archive@minotaur.apache.org Received: (qmail 91462 invoked from network); 23 Dec 2009 20:06:20 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 23 Dec 2009 20:06:20 -0000 Received: (qmail 80751 invoked by uid 500); 23 Dec 2009 20:06:20 -0000 Delivered-To: apmail-incubator-cassandra-commits-archive@incubator.apache.org Received: (qmail 80691 invoked by uid 500); 23 Dec 2009 20:06:20 -0000 Mailing-List: contact cassandra-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: cassandra-dev@incubator.apache.org Delivered-To: mailing list cassandra-commits@incubator.apache.org Received: (qmail 80681 invoked by uid 99); 23 Dec 2009 20:06:20 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 23 Dec 2009 20:06:20 +0000 X-ASF-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 23 Dec 2009 20:06:13 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id BACFD23888CE; Wed, 23 Dec 2009 20:05:53 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r893618 - in /incubator/cassandra/trunk/src/java/org/apache/cassandra: db/CompactionManager.java io/CompactionIterator.java Date: Wed, 23 Dec 2009 20:05:53 -0000 To: cassandra-commits@incubator.apache.org From: jbellis@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20091223200553.BACFD23888CE@eris.apache.org> Author: jbellis Date: Wed Dec 23 20:05:53 2009 New Revision: 893618 URL: http://svn.apache.org/viewvc?rev=893618&view=rev Log: fix bad merge; add overrideable CompactionIterator.getScanners for cleaner subclassing. patch by jbellis Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java incubator/cassandra/trunk/src/java/org/apache/cassandra/io/CompactionIterator.java Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java?rev=893618&r1=893617&r2=893618&view=diff ============================================================================== --- incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java (original) +++ incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java Wed Dec 23 20:05:53 2009 @@ -509,6 +509,8 @@ private static class AntiCompactionIterator extends CompactionIterator { + private Set scanners; + public AntiCompactionIterator(Collection sstables, Collection ranges, int gcBefore, boolean isMajor) throws IOException { @@ -534,12 +536,17 @@ return iter; } - public void close() throws IOException + public Iterable getScanners() { - for (Object o : ((CollatingIterator)source).getIterators()) + if (scanners == null) { - ((SSTableScanner)((FilterIterator)o).getIterator()).close(); + scanners = new HashSet(); + for (Object o : ((CollatingIterator)source).getIterators()) + { + scanners.add((SSTableScanner)((FilterIterator)o).getIterator()); + } } + return scanners; } } Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/io/CompactionIterator.java URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/io/CompactionIterator.java?rev=893618&r1=893617&r2=893618&view=diff ============================================================================== --- incubator/cassandra/trunk/src/java/org/apache/cassandra/io/CompactionIterator.java (original) +++ incubator/cassandra/trunk/src/java/org/apache/cassandra/io/CompactionIterator.java Wed Dec 23 20:05:53 2009 @@ -53,7 +53,6 @@ public CompactionIterator(Iterable sstables, int gcBefore, boolean major) throws IOException { -<<<<<<< HEAD this(getCollatingIterator(sstables), gcBefore, major); } @@ -61,15 +60,12 @@ protected CompactionIterator(Iterator iter, int gcBefore, boolean major) { super(iter); -======= - super(getCollatingIterator(sstables)); row = 0; totalBytes = bytesRead = 0; - for (SSTableScanner iter : (List)((CollatingIterator)source).getIterators()) + for (SSTableScanner scanner : getScanners()) { - totalBytes += iter.getFileLength(); + totalBytes += scanner.getFileLength(); } ->>>>>>> make estimation of pendingtasks for CompactionManager sane this.gcBefore = gcBefore; this.major = major; } @@ -152,9 +148,9 @@ if ((row++ % 1000) == 0) { bytesRead = 0; - for (SSTableScanner iter : (List)((CollatingIterator)source).getIterators()) + for (SSTableScanner scanner : getScanners()) { - bytesRead += iter.getFilePointer(); + bytesRead += scanner.getFilePointer(); } } } @@ -163,12 +159,17 @@ public void close() throws IOException { - for (Object o : ((CollatingIterator)source).getIterators()) + for (SSTableScanner scanner : getScanners()) { - ((SSTableScanner)o).close(); + scanner.close(); } } + protected Iterable getScanners() + { + return ((CollatingIterator)source).getIterators(); + } + public long getTotalBytes() { return totalBytes;