Return-Path: Delivered-To: apmail-incubator-cassandra-commits-archive@minotaur.apache.org Received: (qmail 21789 invoked from network); 2 Oct 2009 18:41:00 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 2 Oct 2009 18:41:00 -0000 Received: (qmail 22789 invoked by uid 500); 2 Oct 2009 18:41:00 -0000 Delivered-To: apmail-incubator-cassandra-commits-archive@incubator.apache.org Received: (qmail 22767 invoked by uid 500); 2 Oct 2009 18:41:00 -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 22725 invoked by uid 99); 2 Oct 2009 18:41:00 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 Oct 2009 18:41:00 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED 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; Fri, 02 Oct 2009 18:40:57 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id F19C823888D8; Fri, 2 Oct 2009 18:40:35 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r821128 - in /incubator/cassandra/trunk: src/java/org/apache/cassandra/db/ColumnFamilyStore.java src/java/org/apache/cassandra/db/CompactionManager.java test/unit/org/apache/cassandra/db/RecoveryManager2Test.java Date: Fri, 02 Oct 2009 18:40:35 -0000 To: cassandra-commits@incubator.apache.org From: jbellis@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20091002184035.F19C823888D8@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jbellis Date: Fri Oct 2 18:40:35 2009 New Revision: 821128 URL: http://svn.apache.org/viewvc?rev=821128&view=rev Log: fix heisenbug in RecoveryManager2Test where a compaction could add back a new sstable to the "cleared" ColumnFamilyStore patch by jbellis; reviewed by junrao for CASSANDRA-463 Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=821128&r1=821127&r2=821128&view=diff ============================================================================== --- incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java (original) +++ incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java Fri Oct 2 18:40:35 2009 @@ -1011,7 +1011,6 @@ } } - /** not threadsafe. caller must have lock_ acquired. */ public Collection getSSTables() { return ssTables_.getSSTables(); 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=821128&r1=821127&r2=821128&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 Fri Oct 2 18:40:35 2009 @@ -228,4 +228,10 @@ { maximumCompactionThreshold = threshold; } + + public void disableCompactions() + { + minimumCompactionThreshold_ = 0; + maximumCompactionThreshold = 0; + } } Modified: incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java?rev=821128&r1=821127&r2=821128&view=diff ============================================================================== --- incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java (original) +++ incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java Fri Oct 2 18:40:35 2009 @@ -38,21 +38,22 @@ @Test public void testWithFlush() throws IOException, ExecutionException, InterruptedException { - Table table1 = Table.open("Keyspace1"); - Set keys = new HashSet(); + CompactionManager.instance().disableCompactions(); for (int i = 0; i < 100; i++) { String key = "key" + i; insertRow(key); - keys.add(key); } - table1.getColumnFamilyStore("Standard1").forceBlockingFlush(); - table1.getColumnFamilyStore("Standard1").clearUnsafe(); + Table table1 = Table.open("Keyspace1"); + ColumnFamilyStore cfs = table1.getColumnFamilyStore("Standard1"); + cfs.forceBlockingFlush(); + + cfs.clearUnsafe(); RecoveryManager.doRecovery(); // this is a no-op. is testing this useful? - Set foundKeys = new HashSet(table1.getColumnFamilyStore("Standard1").getKeyRange("", "", 1000).keys); + Set foundKeys = new HashSet(cfs.getKeyRange("", "", 1000).keys); assert foundKeys.equals(Collections.emptySet()); }