You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sl...@apache.org on 2013/11/19 18:27:09 UTC
[1/5] git commit: Fix TokenMetadataTest
Updated Branches:
refs/heads/cassandra-2.0 47724e6b7 -> 6b1fb2ce7
Fix TokenMetadataTest
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0a5a766d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0a5a766d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0a5a766d
Branch: refs/heads/cassandra-2.0
Commit: 0a5a766d52f3c06399bfa8826df836b3dc070a20
Parents: 582a16e
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Nov 19 17:21:19 2013 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Nov 19 17:21:19 2013 +0100
----------------------------------------------------------------------
.../cassandra/locator/TokenMetadataTest.java | 30 ++++++++++----------
1 file changed, 15 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/0a5a766d/test/unit/org/apache/cassandra/locator/TokenMetadataTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/TokenMetadataTest.java b/test/unit/org/apache/cassandra/locator/TokenMetadataTest.java
index 9f93b2f..f2dc381 100644
--- a/test/unit/org/apache/cassandra/locator/TokenMetadataTest.java
+++ b/test/unit/org/apache/cassandra/locator/TokenMetadataTest.java
@@ -37,21 +37,20 @@ public class TokenMetadataTest
public final static String ONE = "1";
public final static String SIX = "6";
- public static ArrayList<Token> RING;
+ static TokenMetadata tmd;
@BeforeClass
public static void beforeClass() throws Throwable
{
- TokenMetadata tmd = StorageService.instance.getTokenMetadata();
+ tmd = StorageService.instance.getTokenMetadata();
tmd.updateNormalToken(token(ONE), InetAddress.getByName("127.0.0.1"));
tmd.updateNormalToken(token(SIX), InetAddress.getByName("127.0.0.6"));
- RING = tmd.sortedTokens();
}
- private void testRingIterator(String start, boolean includeMin, String... expected)
+ private void testRingIterator(ArrayList<Token> ring, String start, boolean includeMin, String... expected)
{
ArrayList<Token> actual = new ArrayList<Token>();
- Iterators.addAll(actual, TokenMetadata.ringIterator(RING, token(start), includeMin));
+ Iterators.addAll(actual, TokenMetadata.ringIterator(ring, token(start), includeMin));
assertEquals(actual.toString(), expected.length, actual.size());
for (int i = 0; i < expected.length; i++)
assertEquals("Mismatch at index " + i + ": " + actual, token(expected[i]), actual.get(i));
@@ -60,25 +59,26 @@ public class TokenMetadataTest
@Test
public void testRingIterator()
{
- testRingIterator("2", false, "6", "1");
- testRingIterator("7", false, "1", "6");
- testRingIterator("0", false, "1", "6");
- testRingIterator("", false, "1", "6");
+ ArrayList<Token> ring = tmd.sortedTokens();
+ testRingIterator(ring, "2", false, "6", "1");
+ testRingIterator(ring, "7", false, "1", "6");
+ testRingIterator(ring, "0", false, "1", "6");
+ testRingIterator(ring, "", false, "1", "6");
}
@Test
public void testRingIteratorIncludeMin()
{
- testRingIterator("2", true, "6", "", "1");
- testRingIterator("7", true, "", "1", "6");
- testRingIterator("0", true, "1", "6", "");
- testRingIterator("", true, "1", "6", "");
+ ArrayList<Token> ring = tmd.sortedTokens();
+ testRingIterator(ring, "2", true, "6", "", "1");
+ testRingIterator(ring, "7", true, "", "1", "6");
+ testRingIterator(ring, "0", true, "1", "6", "");
+ testRingIterator(ring, "", true, "1", "6", "");
}
@Test
public void testRingIteratorEmptyRing()
{
- RING.clear();
- testRingIterator("2", false);
+ testRingIterator(new ArrayList<Token>(), "2", false);
}
}
[3/5] git commit: Fix LeaveAndBootstrapTest
Posted by sl...@apache.org.
Fix LeaveAndBootstrapTest
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/eeb8d1bd
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/eeb8d1bd
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/eeb8d1bd
Branch: refs/heads/cassandra-2.0
Commit: eeb8d1bdc6ea67f472bcbc5225cdaca5a3199650
Parents: 445c874
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Nov 19 18:05:03 2013 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Nov 19 18:22:59 2013 +0100
----------------------------------------------------------------------
.../org/apache/cassandra/service/LeaveAndBootstrapTest.java | 6 ++++++
1 file changed, 6 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/eeb8d1bd/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
index 73abbe2..d385b11 100644
--- a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
+++ b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
@@ -107,6 +107,8 @@ public class LeaveAndBootstrapTest
valueFactory.leaving(Collections.singleton(endpointTokens.get(LEAVING_NODE))));
assertTrue(tmd.isLeaving(hosts.get(LEAVING_NODE)));
+ PendingRangeCalculatorService.instance.blockUntilFinished();
+
AbstractReplicationStrategy strategy;
for (String table : Schema.instance.getNonSystemTables())
{
@@ -232,6 +234,8 @@ public class LeaveAndBootstrapTest
expectedEndpoints.get("Keyspace4").putAll(new BigIntegerToken("85"), makeAddrs("127.0.0.10", "127.0.0.1", "127.0.0.2", "127.0.0.3"));
expectedEndpoints.get("Keyspace4").putAll(new BigIntegerToken("95"), makeAddrs("127.0.0.1", "127.0.0.2", "127.0.0.3"));
+ PendingRangeCalculatorService.instance.blockUntilFinished();
+
for (Map.Entry<String, AbstractReplicationStrategy> tableStrategy : tableStrategyMap.entrySet())
{
String table = tableStrategy.getKey();
@@ -352,6 +356,8 @@ public class LeaveAndBootstrapTest
expectedEndpoints.get("Keyspace4").get(new BigIntegerToken("75")).removeAll(makeAddrs("127.0.0.10"));
expectedEndpoints.get("Keyspace4").get(new BigIntegerToken("85")).removeAll(makeAddrs("127.0.0.10"));
+ PendingRangeCalculatorService.instance.blockUntilFinished();
+
for (Map.Entry<String, AbstractReplicationStrategy> tableStrategy : tableStrategyMap.entrySet())
{
String table = tableStrategy.getKey();
[5/5] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0
Posted by sl...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0
Conflicts:
test/unit/org/apache/cassandra/db/ScrubTest.java
test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6b1fb2ce
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6b1fb2ce
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6b1fb2ce
Branch: refs/heads/cassandra-2.0
Commit: 6b1fb2ce76f72d57ad93c933d21a31f6bda817b9
Parents: 47724e6 39e3a5e
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Nov 19 18:26:38 2013 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Nov 19 18:26:38 2013 +0100
----------------------------------------------------------------------
.../apache/cassandra/locator/TokenMetadata.java | 22 +++++++++-----
.../unit/org/apache/cassandra/db/ScrubTest.java | 4 +++
.../cassandra/locator/TokenMetadataTest.java | 30 ++++++++++----------
.../service/LeaveAndBootstrapTest.java | 6 ++++
4 files changed, 40 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/6b1fb2ce/src/java/org/apache/cassandra/locator/TokenMetadata.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/6b1fb2ce/test/unit/org/apache/cassandra/db/ScrubTest.java
----------------------------------------------------------------------
diff --cc test/unit/org/apache/cassandra/db/ScrubTest.java
index f09aab3,68d1f5e..a83d3c6
--- a/test/unit/org/apache/cassandra/db/ScrubTest.java
+++ b/test/unit/org/apache/cassandra/db/ScrubTest.java
@@@ -57,8 -83,9 +57,9 @@@ public class ScrubTest extends SchemaLo
public void testScrubOneRow() throws IOException, ExecutionException, InterruptedException, ConfigurationException
{
CompactionManager.instance.disableAutoCompaction();
- Table table = Table.open(TABLE);
- ColumnFamilyStore cfs = table.getColumnFamilyStore(CF);
+ Keyspace keyspace = Keyspace.open(KEYSPACE);
+ ColumnFamilyStore cfs = keyspace.getColumnFamilyStore(CF);
+ cfs.clearUnsafe();
List<Row> rows;
@@@ -78,12 -105,15 +79,13 @@@
public void testScrubDeletedRow() throws IOException, ExecutionException, InterruptedException, ConfigurationException
{
CompactionManager.instance.disableAutoCompaction();
- Table table = Table.open(TABLE);
- ColumnFamilyStore cfs = table.getColumnFamilyStore(CF3);
+ Keyspace keyspace = Keyspace.open(KEYSPACE);
+ ColumnFamilyStore cfs = keyspace.getColumnFamilyStore(CF3);
+ cfs.clearUnsafe();
- RowMutation rm;
- rm = new RowMutation(TABLE, ByteBufferUtil.bytes(1));
- ColumnFamily cf = ColumnFamily.create(TABLE, CF3);
+ ColumnFamily cf = TreeMapBackedSortedColumns.factory.create(KEYSPACE, CF3);
cf.delete(new DeletionInfo(0, 1)); // expired tombstone
- rm.add(cf);
+ RowMutation rm = new RowMutation(KEYSPACE, ByteBufferUtil.bytes(1), cf);
rm.applyUnsafe();
cfs.forceBlockingFlush();
@@@ -95,8 -125,9 +97,9 @@@
public void testScrubMultiRow() throws IOException, ExecutionException, InterruptedException, ConfigurationException
{
CompactionManager.instance.disableAutoCompaction();
- Table table = Table.open(TABLE);
- ColumnFamilyStore cfs = table.getColumnFamilyStore(CF);
+ Keyspace keyspace = Keyspace.open(KEYSPACE);
+ ColumnFamilyStore cfs = keyspace.getColumnFamilyStore(CF);
+ cfs.clearUnsafe();
List<Row> rows;
@@@ -113,12 -144,13 +116,13 @@@
}
@Test
- public void testScubOutOfOrder() throws Exception
+ public void testScrubOutOfOrder() throws Exception
{
- CompactionManager.instance.disableAutoCompaction();
- Table table = Table.open(TABLE);
- String columnFamily = "Standard3";
- ColumnFamilyStore cfs = table.getColumnFamilyStore(columnFamily);
- cfs.clearUnsafe();
+ CompactionManager.instance.disableAutoCompaction();
+ Keyspace keyspace = Keyspace.open(KEYSPACE);
+ String columnFamily = "Standard3";
+ ColumnFamilyStore cfs = keyspace.getColumnFamilyStore(columnFamily);
++ cfs.clearUnsafe();
/*
* Code used to generate an outOfOrder sstable. The test for out-of-order key in SSTableWriter must also be commented out.
http://git-wip-us.apache.org/repos/asf/cassandra/blob/6b1fb2ce/test/unit/org/apache/cassandra/locator/TokenMetadataTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/6b1fb2ce/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
----------------------------------------------------------------------
diff --cc test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
index ef7b800,d385b11..44b3400
--- a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
+++ b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
@@@ -107,10 -107,12 +107,12 @@@ public class LeaveAndBootstrapTes
valueFactory.leaving(Collections.singleton(endpointTokens.get(LEAVING_NODE))));
assertTrue(tmd.isLeaving(hosts.get(LEAVING_NODE)));
+ PendingRangeCalculatorService.instance.blockUntilFinished();
+
AbstractReplicationStrategy strategy;
- for (String table : Schema.instance.getNonSystemTables())
+ for (String keyspaceName : Schema.instance.getNonSystemKeyspaces())
{
- strategy = getStrategy(table, tmd);
+ strategy = getStrategy(keyspaceName, tmd);
for (Token token : keyTokens)
{
int replicationFactor = strategy.getReplicationFactor();
@@@ -232,10 -234,12 +234,12 @@@
expectedEndpoints.get("Keyspace4").putAll(new BigIntegerToken("85"), makeAddrs("127.0.0.10", "127.0.0.1", "127.0.0.2", "127.0.0.3"));
expectedEndpoints.get("Keyspace4").putAll(new BigIntegerToken("95"), makeAddrs("127.0.0.1", "127.0.0.2", "127.0.0.3"));
+ PendingRangeCalculatorService.instance.blockUntilFinished();
+
- for (Map.Entry<String, AbstractReplicationStrategy> tableStrategy : tableStrategyMap.entrySet())
+ for (Map.Entry<String, AbstractReplicationStrategy> keyspaceStrategy : keyspaceStrategyMap.entrySet())
{
- String table = tableStrategy.getKey();
- AbstractReplicationStrategy strategy = tableStrategy.getValue();
+ String keyspaceName = keyspaceStrategy.getKey();
+ AbstractReplicationStrategy strategy = keyspaceStrategy.getValue();
for (int i = 0; i < keyTokens.size(); i++)
{
@@@ -352,10 -356,12 +356,12 @@@
expectedEndpoints.get("Keyspace4").get(new BigIntegerToken("75")).removeAll(makeAddrs("127.0.0.10"));
expectedEndpoints.get("Keyspace4").get(new BigIntegerToken("85")).removeAll(makeAddrs("127.0.0.10"));
+ PendingRangeCalculatorService.instance.blockUntilFinished();
+
- for (Map.Entry<String, AbstractReplicationStrategy> tableStrategy : tableStrategyMap.entrySet())
+ for (Map.Entry<String, AbstractReplicationStrategy> keyspaceStrategy : keyspaceStrategyMap.entrySet())
{
- String table = tableStrategy.getKey();
- AbstractReplicationStrategy strategy = tableStrategy.getValue();
+ String keyspaceName = keyspaceStrategy.getKey();
+ AbstractReplicationStrategy strategy = keyspaceStrategy.getValue();
for (int i = 0; i < keyTokens.size(); i++)
{
[4/5] git commit: Fix potential ConcurrentModificationException in
tests
Posted by sl...@apache.org.
Fix potential ConcurrentModificationException in tests
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/39e3a5e0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/39e3a5e0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/39e3a5e0
Branch: refs/heads/cassandra-2.0
Commit: 39e3a5e039a61e649827950bb36f67617e0bd884
Parents: eeb8d1b
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Nov 19 18:13:23 2013 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Nov 19 18:23:02 2013 +0100
----------------------------------------------------------------------
.../apache/cassandra/locator/TokenMetadata.java | 22 +++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/39e3a5e0/src/java/org/apache/cassandra/locator/TokenMetadata.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/locator/TokenMetadata.java b/src/java/org/apache/cassandra/locator/TokenMetadata.java
index ac9a1d0..5ab1b3f 100644
--- a/src/java/org/apache/cassandra/locator/TokenMetadata.java
+++ b/src/java/org/apache/cassandra/locator/TokenMetadata.java
@@ -876,13 +876,21 @@ public class TokenMetadata
/** used by tests */
public void clearUnsafe()
{
- bootstrapTokens.clear();
- tokenToEndpointMap.clear();
- topology.clear();
- leavingEndpoints.clear();
- pendingRanges.clear();
- endpointToHostIdMap.clear();
- invalidateCaches();
+ lock.writeLock().lock();
+ try
+ {
+ bootstrapTokens.clear();
+ tokenToEndpointMap.clear();
+ topology.clear();
+ leavingEndpoints.clear();
+ pendingRanges.clear();
+ endpointToHostIdMap.clear();
+ invalidateCaches();
+ }
+ finally
+ {
+ lock.writeLock().unlock();
+ }
}
public String toString()
[2/5] git commit: Fix ScrubTest
Posted by sl...@apache.org.
Fix ScrubTest
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/445c874f
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/445c874f
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/445c874f
Branch: refs/heads/cassandra-2.0
Commit: 445c874faa4c38b8e5b14835b282ac2efe358a43
Parents: 0a5a766
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Nov 19 18:22:24 2013 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Nov 19 18:22:24 2013 +0100
----------------------------------------------------------------------
test/unit/org/apache/cassandra/db/ScrubTest.java | 4 ++++
1 file changed, 4 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/445c874f/test/unit/org/apache/cassandra/db/ScrubTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/ScrubTest.java b/test/unit/org/apache/cassandra/db/ScrubTest.java
index c26939a..68d1f5e 100644
--- a/test/unit/org/apache/cassandra/db/ScrubTest.java
+++ b/test/unit/org/apache/cassandra/db/ScrubTest.java
@@ -85,6 +85,7 @@ public class ScrubTest extends SchemaLoader
CompactionManager.instance.disableAutoCompaction();
Table table = Table.open(TABLE);
ColumnFamilyStore cfs = table.getColumnFamilyStore(CF);
+ cfs.clearUnsafe();
List<Row> rows;
@@ -106,6 +107,7 @@ public class ScrubTest extends SchemaLoader
CompactionManager.instance.disableAutoCompaction();
Table table = Table.open(TABLE);
ColumnFamilyStore cfs = table.getColumnFamilyStore(CF3);
+ cfs.clearUnsafe();
RowMutation rm;
rm = new RowMutation(TABLE, ByteBufferUtil.bytes(1));
@@ -125,6 +127,7 @@ public class ScrubTest extends SchemaLoader
CompactionManager.instance.disableAutoCompaction();
Table table = Table.open(TABLE);
ColumnFamilyStore cfs = table.getColumnFamilyStore(CF);
+ cfs.clearUnsafe();
List<Row> rows;
@@ -147,6 +150,7 @@ public class ScrubTest extends SchemaLoader
Table table = Table.open(TABLE);
String columnFamily = "Standard3";
ColumnFamilyStore cfs = table.getColumnFamilyStore(columnFamily);
+ cfs.clearUnsafe();
/*
* Code used to generate an outOfOrder sstable. The test for out-of-order key in SSTableWriter must also be commented out.