You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by al...@apache.org on 2017/01/27 22:18:12 UTC
[06/37] cassandra git commit: Make TableMetadata immutable,
optimize Schema
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/CompactionsPurgeTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/CompactionsPurgeTest.java b/test/unit/org/apache/cassandra/db/compaction/CompactionsPurgeTest.java
index b3f1f57..eccf671 100644
--- a/test/unit/org/apache/cassandra/db/compaction/CompactionsPurgeTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/CompactionsPurgeTest.java
@@ -27,7 +27,7 @@ import org.junit.Test;
import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.Util;
-import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.cql3.statements.CreateTableStatement;
import org.apache.cassandra.cql3.QueryProcessor;
import org.apache.cassandra.cql3.UntypedResultSet;
import org.apache.cassandra.db.*;
@@ -59,23 +59,27 @@ public class CompactionsPurgeTest
public static void defineSchema() throws ConfigurationException
{
SchemaLoader.prepareServer();
+
SchemaLoader.createKeyspace(KEYSPACE1,
KeyspaceParams.simple(1),
SchemaLoader.standardCFMD(KEYSPACE1, CF_STANDARD1),
SchemaLoader.standardCFMD(KEYSPACE1, CF_STANDARD2));
+
SchemaLoader.createKeyspace(KEYSPACE2,
KeyspaceParams.simple(1),
SchemaLoader.standardCFMD(KEYSPACE2, CF_STANDARD1));
+
SchemaLoader.createKeyspace(KEYSPACE_CACHED,
KeyspaceParams.simple(1),
SchemaLoader.standardCFMD(KEYSPACE_CACHED, CF_CACHED).caching(CachingParams.CACHE_EVERYTHING));
+
SchemaLoader.createKeyspace(KEYSPACE_CQL,
KeyspaceParams.simple(1),
- CFMetaData.compile("CREATE TABLE " + CF_CQL + " ("
- + "k int PRIMARY KEY,"
- + "v1 text,"
- + "v2 int"
- + ")", KEYSPACE_CQL));
+ CreateTableStatement.parse("CREATE TABLE " + CF_CQL + " ("
+ + "k int PRIMARY KEY,"
+ + "v1 text,"
+ + "v2 int"
+ + ")", KEYSPACE_CQL));
}
@Test
@@ -92,7 +96,7 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 0, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 0, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -103,12 +107,12 @@ public class CompactionsPurgeTest
// deletes
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder.deleteRow(cfs.metadata, 1, key, String.valueOf(i)).applyUnsafe();
+ RowUpdateBuilder.deleteRow(cfs.metadata(), 1, key, String.valueOf(i)).applyUnsafe();
}
cfs.forceBlockingFlush();
// resurrect one column
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 2, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 2, key);
builder.clustering(String.valueOf(5))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -137,7 +141,7 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 0, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 0, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -147,7 +151,7 @@ public class CompactionsPurgeTest
// deletes
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder.deleteRow(cfs.metadata, Long.MAX_VALUE, key, String.valueOf(i)).applyUnsafe();
+ RowUpdateBuilder.deleteRow(cfs.metadata(), Long.MAX_VALUE, key, String.valueOf(i)).applyUnsafe();
}
cfs.forceBlockingFlush();
@@ -155,7 +159,7 @@ public class CompactionsPurgeTest
FBUtilities.waitOnFutures(CompactionManager.instance.submitMaximal(cfs, Integer.MAX_VALUE, false));
// resurrect one column
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 2, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 2, key);
builder.clustering(String.valueOf(5))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -182,7 +186,7 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 0, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 0, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -190,7 +194,7 @@ public class CompactionsPurgeTest
cfs.forceBlockingFlush();
new Mutation(KEYSPACE1, dk(key))
- .add(PartitionUpdate.fullPartitionDelete(cfs.metadata, dk(key), Long.MAX_VALUE, FBUtilities.nowInSeconds()))
+ .add(PartitionUpdate.fullPartitionDelete(cfs.metadata(), dk(key), Long.MAX_VALUE, FBUtilities.nowInSeconds()))
.applyUnsafe();
cfs.forceBlockingFlush();
@@ -198,7 +202,7 @@ public class CompactionsPurgeTest
FBUtilities.waitOnFutures(CompactionManager.instance.submitMaximal(cfs, Integer.MAX_VALUE, false));
// resurrect one column
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 2, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 2, key);
builder.clustering(String.valueOf(5))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -225,14 +229,14 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 0, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 0, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
}
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, Long.MAX_VALUE, dk(key))
+ new RowUpdateBuilder(cfs.metadata(), Long.MAX_VALUE, dk(key))
.addRangeTombstone(String.valueOf(0), String.valueOf(9)).build().applyUnsafe();
cfs.forceBlockingFlush();
@@ -240,7 +244,7 @@ public class CompactionsPurgeTest
FBUtilities.waitOnFutures(CompactionManager.instance.submitMaximal(cfs, Integer.MAX_VALUE, false));
// resurrect one column
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 2, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 2, key);
builder.clustering(String.valueOf(5))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -268,7 +272,7 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 0, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 0, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -278,7 +282,7 @@ public class CompactionsPurgeTest
// deletes
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder.deleteRow(cfs.metadata, 1, key, String.valueOf(i)).applyUnsafe();
+ RowUpdateBuilder.deleteRow(cfs.metadata(), 1, key, String.valueOf(i)).applyUnsafe();
}
cfs.forceBlockingFlush();
@@ -292,7 +296,7 @@ public class CompactionsPurgeTest
cfs.forceBlockingFlush();
Collection<SSTableReader> sstablesIncomplete = cfs.getLiveSSTables();
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 2, "key1");
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 2, "key1");
builder.clustering(String.valueOf(5))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -326,25 +330,25 @@ public class CompactionsPurgeTest
String key3 = "key3";
// inserts
- new RowUpdateBuilder(cfs.metadata, 8, key3)
+ new RowUpdateBuilder(cfs.metadata(), 8, key3)
.clustering("c1")
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, 8, key3)
+ new RowUpdateBuilder(cfs.metadata(), 8, key3)
.clustering("c2")
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
cfs.forceBlockingFlush();
// delete c1
- RowUpdateBuilder.deleteRow(cfs.metadata, 10, key3, "c1").applyUnsafe();
+ RowUpdateBuilder.deleteRow(cfs.metadata(), 10, key3, "c1").applyUnsafe();
cfs.forceBlockingFlush();
Collection<SSTableReader> sstablesIncomplete = cfs.getLiveSSTables();
// delete c2 so we have new delete in a diffrent SSTable
- RowUpdateBuilder.deleteRow(cfs.metadata, 9, key3, "c2").applyUnsafe();
+ RowUpdateBuilder.deleteRow(cfs.metadata(), 9, key3, "c2").applyUnsafe();
cfs.forceBlockingFlush();
// compact the sstables with the c1/c2 data and the c1 tombstone
@@ -374,7 +378,7 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 5; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 0, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 0, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -383,7 +387,7 @@ public class CompactionsPurgeTest
// deletes
for (int i = 0; i < 5; i++)
{
- RowUpdateBuilder.deleteRow(cfs.metadata, 1, key, String.valueOf(i)).applyUnsafe();
+ RowUpdateBuilder.deleteRow(cfs.metadata(), 1, key, String.valueOf(i)).applyUnsafe();
}
cfs.forceBlockingFlush();
assertEquals(String.valueOf(cfs.getLiveSSTables()), 1, cfs.getLiveSSTables().size()); // inserts & deletes were in the same memtable -> only deletes in sstable
@@ -411,7 +415,7 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, 0, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), 0, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -419,12 +423,12 @@ public class CompactionsPurgeTest
// deletes partition
Mutation rm = new Mutation(KEYSPACE_CACHED, dk(key));
- rm.add(PartitionUpdate.fullPartitionDelete(cfs.metadata, dk(key), 1, FBUtilities.nowInSeconds()));
+ rm.add(PartitionUpdate.fullPartitionDelete(cfs.metadata(), dk(key), 1, FBUtilities.nowInSeconds()));
rm.applyUnsafe();
// Adds another unrelated partition so that the sstable is not considered fully expired. We do not
// invalidate the row cache in that latter case.
- new RowUpdateBuilder(cfs.metadata, 0, "key4").clustering("c").add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER).build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), 0, "key4").clustering("c").add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER).build().applyUnsafe();
// move the key up in row cache (it should not be empty since we have the partition deletion info)
assertFalse(Util.getOnlyPartitionUnfiltered(Util.cmd(cfs, key).build()).isEmpty());
@@ -451,7 +455,7 @@ public class CompactionsPurgeTest
// inserts
for (int i = 0; i < 10; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, i, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), i, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
@@ -459,7 +463,7 @@ public class CompactionsPurgeTest
// deletes partition with timestamp such that not all columns are deleted
Mutation rm = new Mutation(KEYSPACE1, dk(key));
- rm.add(PartitionUpdate.fullPartitionDelete(cfs.metadata, dk(key), 4, FBUtilities.nowInSeconds()));
+ rm.add(PartitionUpdate.fullPartitionDelete(cfs.metadata(), dk(key), 4, FBUtilities.nowInSeconds()));
rm.applyUnsafe();
ImmutableBTreePartition partition = Util.getOnlyPartitionUnfiltered(Util.cmd(cfs, key).build());
@@ -473,7 +477,7 @@ public class CompactionsPurgeTest
// re-inserts with timestamp lower than delete
for (int i = 0; i < 5; i++)
{
- RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata, i, key);
+ RowUpdateBuilder builder = new RowUpdateBuilder(cfs.metadata(), i, key);
builder.clustering(String.valueOf(i))
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build().applyUnsafe();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java b/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
index 47dc7f6..feea50a 100644
--- a/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
@@ -29,7 +29,7 @@ import org.junit.runner.RunWith;
import org.apache.cassandra.OrderedJUnit4ClassRunner;
import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.Util;
-import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.schema.TableMetadata;
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.marshal.AsciiType;
import org.apache.cassandra.exceptions.ConfigurationException;
@@ -37,6 +37,7 @@ import org.apache.cassandra.dht.*;
import org.apache.cassandra.io.sstable.format.SSTableReader;
import org.apache.cassandra.schema.CompactionParams;
import org.apache.cassandra.schema.KeyspaceParams;
+import org.apache.cassandra.schema.MigrationManager;
import org.apache.cassandra.utils.ByteBufferUtil;
import org.apache.cassandra.utils.FBUtilities;
@@ -82,7 +83,7 @@ public class CompactionsTest
Keyspace keyspace = Keyspace.open(KEYSPACE1);
ColumnFamilyStore store = keyspace.getColumnFamilyStore(CF_DENSE1);
store.clearUnsafe();
- store.metadata.gcGraceSeconds(1);
+ MigrationManager.announceTableUpdate(store.metadata().unbuild().gcGraceSeconds(1).build(), true);
// disable compaction while flushing
store.disableAutoCompaction();
@@ -118,7 +119,7 @@ public class CompactionsTest
public static long populate(String ks, String cf, int startRowKey, int endRowKey, int ttl)
{
long timestamp = System.currentTimeMillis();
- CFMetaData cfm = Keyspace.open(ks).getColumnFamilyStore(cf).metadata;
+ TableMetadata cfm = Keyspace.open(ks).getColumnFamilyStore(cf).metadata();
for (int i = startRowKey; i <= endRowKey; i++)
{
DecoratedKey key = Util.dk(Integer.toString(i));
@@ -156,21 +157,21 @@ public class CompactionsTest
{
Keyspace keyspace = Keyspace.open(KEYSPACE1);
ColumnFamilyStore cfs = keyspace.getColumnFamilyStore("Super1");
- CFMetaData cfm = cfs.metadata;
+ CFMetaData table = cfs.metadata;
cfs.disableAutoCompaction();
DecoratedKey key = Util.dk("tskey");
ByteBuffer scName = ByteBufferUtil.bytes("TestSuperColumn");
// a subcolumn
- new RowUpdateBuilder(cfm, FBUtilities.timestampMicros(), key.getKey())
+ new RowUpdateBuilder(table, FBUtilities.timestampMicros(), key.getKey())
.clustering(ByteBufferUtil.bytes("cols"))
.add("val", "val1")
.build().applyUnsafe();
cfs.forceBlockingFlush();
// shadow the subcolumn with a supercolumn tombstone
- RowUpdateBuilder.deleteRow(cfm, FBUtilities.timestampMicros(), key.getKey(), ByteBufferUtil.bytes("cols")).applyUnsafe();
+ RowUpdateBuilder.deleteRow(table, FBUtilities.timestampMicros(), key.getKey(), ByteBufferUtil.bytes("cols")).applyUnsafe();
cfs.forceBlockingFlush();
CompactionManager.instance.performMaximal(cfs);
@@ -543,7 +544,7 @@ public class CompactionsTest
{
long timestamp = System.currentTimeMillis();
DecoratedKey dk = Util.dk(String.format("%03d", key));
- new RowUpdateBuilder(Keyspace.open(KEYSPACE1).getColumnFamilyStore(CF_STANDARD1).metadata, timestamp, dk.getKey())
+ new RowUpdateBuilder(Keyspace.open(KEYSPACE1).getColumnFamilyStore(CF_STANDARD1).metadata(), timestamp, dk.getKey())
.add("val", "val")
.build()
.applyUnsafe();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/DateTieredCompactionStrategyTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/DateTieredCompactionStrategyTest.java b/test/unit/org/apache/cassandra/db/compaction/DateTieredCompactionStrategyTest.java
index 5f470b7..e4cd37b 100644
--- a/test/unit/org/apache/cassandra/db/compaction/DateTieredCompactionStrategyTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/DateTieredCompactionStrategyTest.java
@@ -223,7 +223,7 @@ public class DateTieredCompactionStrategyTest extends SchemaLoader
for (int r = 0; r < numSSTables; r++)
{
DecoratedKey key = Util.dk(String.valueOf(r));
- new RowUpdateBuilder(cfs.metadata, r, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), r, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
@@ -259,7 +259,7 @@ public class DateTieredCompactionStrategyTest extends SchemaLoader
for (int r = 0; r < numSSTables; r++)
{
DecoratedKey key = Util.dk(String.valueOf(r));
- new RowUpdateBuilder(cfs.metadata, r, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), r, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
@@ -296,7 +296,7 @@ public class DateTieredCompactionStrategyTest extends SchemaLoader
// create 2 sstables
DecoratedKey key = Util.dk(String.valueOf("expired"));
- new RowUpdateBuilder(cfs.metadata, System.currentTimeMillis(), 1, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), System.currentTimeMillis(), 1, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
@@ -305,7 +305,7 @@ public class DateTieredCompactionStrategyTest extends SchemaLoader
Thread.sleep(10);
key = Util.dk(String.valueOf("nonexpired"));
- new RowUpdateBuilder(cfs.metadata, System.currentTimeMillis(), key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), System.currentTimeMillis(), key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
@@ -349,7 +349,7 @@ public class DateTieredCompactionStrategyTest extends SchemaLoader
for (int i = 0; i < 10; i++)
{
DecoratedKey key = Util.dk(String.valueOf(r));
- new RowUpdateBuilder(cfs.metadata, timestamp, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), timestamp, key.getKey())
.clustering("column")
.add("val", bigValue).build().applyUnsafe();
}
@@ -359,7 +359,7 @@ public class DateTieredCompactionStrategyTest extends SchemaLoader
for (int r = 0; r < numSSTables / 2; r++)
{
DecoratedKey key = Util.dk(String.valueOf(r));
- new RowUpdateBuilder(cfs.metadata, timestamp, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), timestamp, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
cfs.forceBlockingFlush();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java b/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
index 12144eb..9a8371e 100644
--- a/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
@@ -117,7 +117,7 @@ public class LeveledCompactionStrategyTest
// Adds enough data to trigger multiple sstable per level
for (int r = 0; r < rows; r++)
{
- UpdateBuilder update = UpdateBuilder.create(cfs.metadata, String.valueOf(r));
+ UpdateBuilder update = UpdateBuilder.create(cfs.metadata(), String.valueOf(r));
for (int c = 0; c < columns; c++)
update.newRow("column" + c).add("val", value);
update.applyUnsafe();
@@ -173,7 +173,7 @@ public class LeveledCompactionStrategyTest
// Adds enough data to trigger multiple sstable per level
for (int r = 0; r < rows; r++)
{
- UpdateBuilder update = UpdateBuilder.create(cfs.metadata, String.valueOf(r));
+ UpdateBuilder update = UpdateBuilder.create(cfs.metadata(), String.valueOf(r));
for (int c = 0; c < columns; c++)
update.newRow("column" + c).add("val", value);
update.applyUnsafe();
@@ -239,7 +239,7 @@ public class LeveledCompactionStrategyTest
int columns = 10;
for (int r = 0; r < rows; r++)
{
- UpdateBuilder update = UpdateBuilder.create(cfs.metadata, String.valueOf(r));
+ UpdateBuilder update = UpdateBuilder.create(cfs.metadata(), String.valueOf(r));
for (int c = 0; c < columns; c++)
update.newRow("column" + c).add("val", value);
update.applyUnsafe();
@@ -276,7 +276,7 @@ public class LeveledCompactionStrategyTest
// Adds enough data to trigger multiple sstable per level
for (int r = 0; r < rows; r++)
{
- UpdateBuilder update = UpdateBuilder.create(cfs.metadata, String.valueOf(r));
+ UpdateBuilder update = UpdateBuilder.create(cfs.metadata(), String.valueOf(r));
for (int c = 0; c < columns; c++)
update.newRow("column" + c).add("val", value);
update.applyUnsafe();
@@ -317,7 +317,7 @@ public class LeveledCompactionStrategyTest
// Adds enough data to trigger multiple sstable per level
for (int r = 0; r < rows; r++)
{
- UpdateBuilder update = UpdateBuilder.create(cfs.metadata, String.valueOf(r));
+ UpdateBuilder update = UpdateBuilder.create(cfs.metadata(), String.valueOf(r));
for (int c = 0; c < columns; c++)
update.newRow("column" + c).add("val", value);
update.applyUnsafe();
@@ -395,7 +395,7 @@ public class LeveledCompactionStrategyTest
// create 10 sstables that contain data for both key1 and key2
for (int i = 0; i < numIterations; i++) {
for (DecoratedKey key : keys) {
- UpdateBuilder update = UpdateBuilder.create(cfs.metadata, key);
+ UpdateBuilder update = UpdateBuilder.create(cfs.metadata(), key);
for (int c = 0; c < columns; c++)
update.newRow("column" + c).add("val", value);
update.applyUnsafe();
@@ -406,7 +406,7 @@ public class LeveledCompactionStrategyTest
// create 20 more sstables with 10 containing data for key1 and other 10 containing data for key2
for (int i = 0; i < numIterations; i++) {
for (DecoratedKey key : keys) {
- UpdateBuilder update = UpdateBuilder.create(cfs.metadata, key);
+ UpdateBuilder update = UpdateBuilder.create(cfs.metadata(), key);
for (int c = 0; c < columns; c++)
update.newRow("column" + c).add("val", value);
update.applyUnsafe();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/OneCompactionTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/OneCompactionTest.java b/test/unit/org/apache/cassandra/db/compaction/OneCompactionTest.java
index f55bf52..0c469dc 100644
--- a/test/unit/org/apache/cassandra/db/compaction/OneCompactionTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/OneCompactionTest.java
@@ -64,7 +64,7 @@ public class OneCompactionTest
Set<String> inserted = new HashSet<>();
for (int j = 0; j < insertsPerTable; j++) {
String key = String.valueOf(j);
- new RowUpdateBuilder(store.metadata, j, key)
+ new RowUpdateBuilder(store.metadata(), j, key)
.clustering("0")
.add("val", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategyTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategyTest.java b/test/unit/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategyTest.java
index f4dbea8..7c86f87 100644
--- a/test/unit/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategyTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategyTest.java
@@ -158,7 +158,7 @@ public class SizeTieredCompactionStrategyTest
for (int r = 0; r < numSSTables; r++)
{
String key = String.valueOf(r);
- new RowUpdateBuilder(cfs.metadata, 0, key)
+ new RowUpdateBuilder(cfs.metadata(), 0, key)
.clustering("column").add("val", value)
.build().applyUnsafe();
cfs.forceBlockingFlush();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/TTLExpiryTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/TTLExpiryTest.java b/test/unit/org/apache/cassandra/db/compaction/TTLExpiryTest.java
index 55bff5e..6e4ba0b 100644
--- a/test/unit/org/apache/cassandra/db/compaction/TTLExpiryTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/TTLExpiryTest.java
@@ -31,7 +31,7 @@ import org.junit.runner.RunWith;
import org.apache.cassandra.OrderedJUnit4ClassRunner;
import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.Util;
-import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.schema.TableMetadata;
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.filter.ColumnFilter;
import org.apache.cassandra.db.lifecycle.SSTableSet;
@@ -41,6 +41,7 @@ import org.apache.cassandra.io.sstable.format.SSTableReader;
import org.apache.cassandra.exceptions.ConfigurationException;
import org.apache.cassandra.io.sstable.ISSTableScanner;
import org.apache.cassandra.schema.KeyspaceParams;
+import org.apache.cassandra.schema.MigrationManager;
import org.apache.cassandra.tools.SSTableExpiredBlockers;
import org.apache.cassandra.utils.ByteBufferUtil;
@@ -59,17 +60,17 @@ public class TTLExpiryTest
SchemaLoader.prepareServer();
SchemaLoader.createKeyspace(KEYSPACE1,
KeyspaceParams.simple(1),
- CFMetaData.Builder.create(KEYSPACE1, CF_STANDARD1)
- .addPartitionKey("pKey", AsciiType.instance)
- .addRegularColumn("col1", AsciiType.instance)
- .addRegularColumn("col", AsciiType.instance)
- .addRegularColumn("col311", AsciiType.instance)
- .addRegularColumn("col2", AsciiType.instance)
- .addRegularColumn("col3", AsciiType.instance)
- .addRegularColumn("col7", AsciiType.instance)
- .addRegularColumn("col8", MapType.getInstance(AsciiType.instance, AsciiType.instance, true))
- .addRegularColumn("shadow", AsciiType.instance)
- .build().gcGraceSeconds(0));
+ TableMetadata.builder(KEYSPACE1, CF_STANDARD1)
+ .addPartitionKeyColumn("pKey", AsciiType.instance)
+ .addRegularColumn("col1", AsciiType.instance)
+ .addRegularColumn("col", AsciiType.instance)
+ .addRegularColumn("col311", AsciiType.instance)
+ .addRegularColumn("col2", AsciiType.instance)
+ .addRegularColumn("col3", AsciiType.instance)
+ .addRegularColumn("col7", AsciiType.instance)
+ .addRegularColumn("col8", MapType.getInstance(AsciiType.instance, AsciiType.instance, true))
+ .addRegularColumn("shadow", AsciiType.instance)
+ .gcGraceSeconds(0));
}
@Test
@@ -77,36 +78,36 @@ public class TTLExpiryTest
{
ColumnFamilyStore cfs = Keyspace.open(KEYSPACE1).getColumnFamilyStore("Standard1");
cfs.disableAutoCompaction();
- cfs.metadata.gcGraceSeconds(0);
+ MigrationManager.announceTableUpdate(cfs.metadata().unbuild().gcGraceSeconds(0).build(), true);
String key = "ttl";
- new RowUpdateBuilder(cfs.metadata, 1L, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), 1L, 1, key)
.add("col1", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, 3L, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), 3L, 1, key)
.add("col2", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, 2L, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), 2L, 1, key)
.add("col1", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, 5L, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), 5L, 1, key)
.add("col2", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, 4L, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), 4L, 1, key)
.add("col1", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, 7L, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), 7L, 1, key)
.add("shadow", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
@@ -114,12 +115,12 @@ public class TTLExpiryTest
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, 6L, 3, key)
+ new RowUpdateBuilder(cfs.metadata(), 6L, 3, key)
.add("shadow", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, 8L, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), 8L, 1, key)
.add("col2", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
@@ -158,10 +159,10 @@ public class TTLExpiryTest
cfs.truncateBlocking();
cfs.disableAutoCompaction();
// To reproduce #10944, we need our gcBefore to be equal to the locaDeletionTime. A gcGrace of 1 will (almost always) give us that.
- cfs.metadata.gcGraceSeconds(force10944Bug ? 1 : 0);
+ MigrationManager.announceTableUpdate(cfs.metadata().unbuild().gcGraceSeconds(force10944Bug ? 1 : 0).build(), true);
long timestamp = System.currentTimeMillis();
String key = "ttl";
- new RowUpdateBuilder(cfs.metadata, timestamp, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, 1, key)
.add("col", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.add("col7", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
@@ -169,7 +170,7 @@ public class TTLExpiryTest
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, timestamp, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, 1, key)
.add("col2", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.add("col8", Collections.singletonMap("bar", "foo"))
.delete("col1")
@@ -180,14 +181,14 @@ public class TTLExpiryTest
cfs.forceBlockingFlush();
// To reproduce #10944, we need to avoid the optimization that get rid of full sstable because everything
// is known to be gcAble, so keep some data non-expiring in that case.
- new RowUpdateBuilder(cfs.metadata, timestamp, force10944Bug ? 0 : 1, key)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, force10944Bug ? 0 : 1, key)
.add("col3", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, timestamp, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, 1, key)
.add("col311", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
@@ -206,28 +207,28 @@ public class TTLExpiryTest
ColumnFamilyStore cfs = Keyspace.open(KEYSPACE1).getColumnFamilyStore("Standard1");
cfs.truncateBlocking();
cfs.disableAutoCompaction();
- cfs.metadata.gcGraceSeconds(0);
+ MigrationManager.announceTableUpdate(cfs.metadata().unbuild().gcGraceSeconds(0).build(), true);
long timestamp = System.currentTimeMillis();
String key = "ttl";
- new RowUpdateBuilder(cfs.metadata, timestamp, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, 1, key)
.add("col", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.add("col7", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, timestamp, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, 1, key)
.add("col2", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
cfs.forceBlockingFlush();
- new RowUpdateBuilder(cfs.metadata, timestamp, 1, key)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, 1, key)
.add("col3", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
cfs.forceBlockingFlush();
String noTTLKey = "nottl";
- new RowUpdateBuilder(cfs.metadata, timestamp, noTTLKey)
+ new RowUpdateBuilder(cfs.metadata(), timestamp, noTTLKey)
.add("col311", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
.applyUnsafe();
@@ -238,7 +239,7 @@ public class TTLExpiryTest
cfs.enableAutoCompaction(true);
assertEquals(1, cfs.getLiveSSTables().size());
SSTableReader sstable = cfs.getLiveSSTables().iterator().next();
- ISSTableScanner scanner = sstable.getScanner(ColumnFilter.all(sstable.metadata), DataRange.allData(cfs.getPartitioner()));
+ ISSTableScanner scanner = sstable.getScanner(ColumnFilter.all(cfs.metadata()), DataRange.allData(cfs.getPartitioner()));
assertTrue(scanner.hasNext());
while(scanner.hasNext())
{
@@ -254,9 +255,9 @@ public class TTLExpiryTest
ColumnFamilyStore cfs = Keyspace.open(KEYSPACE1).getColumnFamilyStore("Standard1");
cfs.truncateBlocking();
cfs.disableAutoCompaction();
- cfs.metadata.gcGraceSeconds(0);
+ MigrationManager.announceTableUpdate(cfs.metadata().unbuild().gcGraceSeconds(0).build(), true);
- new RowUpdateBuilder(cfs.metadata, System.currentTimeMillis(), "test")
+ new RowUpdateBuilder(cfs.metadata(), System.currentTimeMillis(), "test")
.noRowMarker()
.add("col1", ByteBufferUtil.EMPTY_BYTE_BUFFER)
.build()
@@ -266,7 +267,7 @@ public class TTLExpiryTest
SSTableReader blockingSSTable = cfs.getSSTables(SSTableSet.LIVE).iterator().next();
for (int i = 0; i < 10; i++)
{
- new RowUpdateBuilder(cfs.metadata, System.currentTimeMillis(), "test")
+ new RowUpdateBuilder(cfs.metadata(), System.currentTimeMillis(), "test")
.noRowMarker()
.delete("col1")
.build()
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategyTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategyTest.java b/test/unit/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategyTest.java
index 5041b31..930fc79 100644
--- a/test/unit/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategyTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategyTest.java
@@ -148,7 +148,7 @@ public class TimeWindowCompactionStrategyTest extends SchemaLoader
for (int r = 0; r < 3; r++)
{
DecoratedKey key = Util.dk(String.valueOf(r));
- new RowUpdateBuilder(cfs.metadata, r, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), r, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
@@ -159,7 +159,7 @@ public class TimeWindowCompactionStrategyTest extends SchemaLoader
{
// And add progressively more cells into each sstable
DecoratedKey key = Util.dk(String.valueOf(r));
- new RowUpdateBuilder(cfs.metadata, r, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), r, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
cfs.forceBlockingFlush();
@@ -200,7 +200,7 @@ public class TimeWindowCompactionStrategyTest extends SchemaLoader
DecoratedKey key = Util.dk(String.valueOf(r));
for(int i = 0 ; i < r ; i++)
{
- new RowUpdateBuilder(cfs.metadata, tstamp + r, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), tstamp + r, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
}
@@ -232,7 +232,7 @@ public class TimeWindowCompactionStrategyTest extends SchemaLoader
// create 2 sstables
DecoratedKey key = Util.dk(String.valueOf("expired"));
- new RowUpdateBuilder(cfs.metadata, System.currentTimeMillis(), 1, key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), System.currentTimeMillis(), 1, key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
@@ -241,7 +241,7 @@ public class TimeWindowCompactionStrategyTest extends SchemaLoader
Thread.sleep(10);
key = Util.dk(String.valueOf("nonexpired"));
- new RowUpdateBuilder(cfs.metadata, System.currentTimeMillis(), key.getKey())
+ new RowUpdateBuilder(cfs.metadata(), System.currentTimeMillis(), key.getKey())
.clustering("column")
.add("val", value).build().applyUnsafe();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/lifecycle/HelpersTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/lifecycle/HelpersTest.java b/test/unit/org/apache/cassandra/db/lifecycle/HelpersTest.java
index 1db7944..7e1540a 100644
--- a/test/unit/org/apache/cassandra/db/lifecycle/HelpersTest.java
+++ b/test/unit/org/apache/cassandra/db/lifecycle/HelpersTest.java
@@ -31,11 +31,11 @@ import org.junit.BeforeClass;
import org.junit.Test;
import junit.framework.Assert;
-import org.apache.cassandra.MockSchema;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.compaction.OperationType;
import org.apache.cassandra.io.sstable.format.SSTableReader;
+import org.apache.cassandra.schema.MockSchema;
import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertNotNull;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/lifecycle/LifecycleTransactionTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/lifecycle/LifecycleTransactionTest.java b/test/unit/org/apache/cassandra/db/lifecycle/LifecycleTransactionTest.java
index 4514b72..0cc5b72 100644
--- a/test/unit/org/apache/cassandra/db/lifecycle/LifecycleTransactionTest.java
+++ b/test/unit/org/apache/cassandra/db/lifecycle/LifecycleTransactionTest.java
@@ -28,15 +28,15 @@ import org.junit.BeforeClass;
import org.junit.Test;
import junit.framework.Assert;
-import org.apache.cassandra.MockSchema;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Memtable;
import org.apache.cassandra.db.commitlog.CommitLogPosition;
import org.apache.cassandra.db.compaction.OperationType;
-import org.apache.cassandra.db.lifecycle.LifecycleTransaction.ReaderState;
import org.apache.cassandra.db.lifecycle.LifecycleTransaction.ReaderState.Action;
+import org.apache.cassandra.db.lifecycle.LifecycleTransaction.ReaderState;
import org.apache.cassandra.io.sstable.format.SSTableReader;
+import org.apache.cassandra.schema.MockSchema;
import org.apache.cassandra.utils.Pair;
import org.apache.cassandra.utils.concurrent.AbstractTransactionalTest;
import org.apache.cassandra.utils.concurrent.Transactional.AbstractTransactional.State;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/lifecycle/LogTransactionTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/lifecycle/LogTransactionTest.java b/test/unit/org/apache/cassandra/db/lifecycle/LogTransactionTest.java
index dd3f370..2021538 100644
--- a/test/unit/org/apache/cassandra/db/lifecycle/LogTransactionTest.java
+++ b/test/unit/org/apache/cassandra/db/lifecycle/LogTransactionTest.java
@@ -32,15 +32,8 @@ import com.google.common.collect.Iterables;
import com.google.common.collect.Sets;
import org.junit.BeforeClass;
import org.junit.Test;
-
-import static junit.framework.Assert.assertNotNull;
-import static junit.framework.Assert.assertNull;
-import static junit.framework.Assert.fail;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
import junit.framework.Assert;
-import org.apache.cassandra.MockSchema;
+
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Directories;
import org.apache.cassandra.db.SerializationHeader;
@@ -51,12 +44,20 @@ import org.apache.cassandra.io.sstable.format.SSTableReader;
import org.apache.cassandra.io.sstable.metadata.MetadataCollector;
import org.apache.cassandra.io.sstable.metadata.MetadataType;
import org.apache.cassandra.io.sstable.metadata.StatsMetadata;
-import org.apache.cassandra.io.util.FileUtils;
import org.apache.cassandra.io.util.FileHandle;
+import org.apache.cassandra.io.util.FileUtils;
+import org.apache.cassandra.schema.MockSchema;
import org.apache.cassandra.utils.AlwaysPresentFilter;
import org.apache.cassandra.utils.concurrent.AbstractTransactionalTest;
import org.apache.cassandra.utils.concurrent.Transactional;
+import static junit.framework.Assert.assertNotNull;
+import static junit.framework.Assert.assertNull;
+import static junit.framework.Assert.fail;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
public class LogTransactionTest extends AbstractTransactionalTest
{
private static final String KEYSPACE = "TransactionLogsTest";
@@ -89,7 +90,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{
this.cfs = cfs;
this.txnLogs = txnLogs;
- this.dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ this.dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
this.sstableOld = sstable(dataFolder, cfs, 0, 128);
this.sstableNew = sstable(dataFolder, cfs, 1, 128);
@@ -201,7 +202,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testUntrack() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstableNew = sstable(dataFolder, cfs, 1, 128);
// complete a transaction without keep the new files since they were untracked
@@ -224,7 +225,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testCommitSameDesc() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstableOld1 = sstable(dataFolder, cfs, 0, 128);
SSTableReader sstableOld2 = sstable(dataFolder, cfs, 0, 256);
SSTableReader sstableNew = sstable(dataFolder, cfs, 1, 128);
@@ -255,7 +256,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testCommitOnlyNew() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstable = sstable(dataFolder, cfs, 0, 128);
LogTransaction log = new LogTransaction(OperationType.COMPACTION);
@@ -273,7 +274,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testCommitOnlyOld() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstable = sstable(dataFolder, cfs, 0, 128);
LogTransaction log = new LogTransaction(OperationType.COMPACTION);
@@ -294,7 +295,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File origiFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File origiFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
File dataFolder1 = new File(origiFolder, "1");
File dataFolder2 = new File(origiFolder, "2");
Files.createDirectories(dataFolder1.toPath());
@@ -330,7 +331,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testAbortOnlyNew() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstable = sstable(dataFolder, cfs, 0, 128);
LogTransaction log = new LogTransaction(OperationType.COMPACTION);
@@ -348,7 +349,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testAbortOnlyOld() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstable = sstable(dataFolder, cfs, 0, 128);
LogTransaction log = new LogTransaction(OperationType.COMPACTION);
@@ -370,7 +371,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File origiFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File origiFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
File dataFolder1 = new File(origiFolder, "1");
File dataFolder2 = new File(origiFolder, "2");
Files.createDirectories(dataFolder1.toPath());
@@ -405,7 +406,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testRemoveUnfinishedLeftovers_abort() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstableOld = sstable(dataFolder, cfs, 0, 128);
SSTableReader sstableNew = sstable(dataFolder, cfs, 1, 128);
@@ -424,10 +425,10 @@ public class LogTransactionTest extends AbstractTransactionalTest
Assert.assertEquals(tmpFiles, getTemporaryFiles(sstableNew.descriptor.directory));
// normally called at startup
- LogTransaction.removeUnfinishedLeftovers(cfs.metadata);
+ LogTransaction.removeUnfinishedLeftovers(cfs.metadata());
// sstableOld should be only table left
- Directories directories = new Directories(cfs.metadata);
+ Directories directories = new Directories(cfs.metadata());
Map<Descriptor, Set<Component>> sstables = directories.sstableLister(Directories.OnTxnErr.THROW).list();
assertEquals(1, sstables.size());
@@ -442,7 +443,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testRemoveUnfinishedLeftovers_commit() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstableOld = sstable(dataFolder, cfs, 0, 128);
SSTableReader sstableNew = sstable(dataFolder, cfs, 1, 128);
@@ -464,10 +465,10 @@ public class LogTransactionTest extends AbstractTransactionalTest
Assert.assertEquals(tmpFiles, getTemporaryFiles(sstableOld.descriptor.directory));
// normally called at startup
- LogTransaction.removeUnfinishedLeftovers(cfs.metadata);
+ LogTransaction.removeUnfinishedLeftovers(cfs.metadata());
// sstableNew should be only table left
- Directories directories = new Directories(cfs.metadata);
+ Directories directories = new Directories(cfs.metadata());
Map<Descriptor, Set<Component>> sstables = directories.sstableLister(Directories.OnTxnErr.THROW).list();
assertEquals(1, sstables.size());
@@ -483,7 +484,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File origiFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File origiFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
File dataFolder1 = new File(origiFolder, "1");
File dataFolder2 = new File(origiFolder, "2");
Files.createDirectories(dataFolder1.toPath());
@@ -534,7 +535,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File origiFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File origiFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
File dataFolder1 = new File(origiFolder, "1");
File dataFolder2 = new File(origiFolder, "2");
Files.createDirectories(dataFolder1.toPath());
@@ -709,7 +710,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File origiFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File origiFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
File dataFolder1 = new File(origiFolder, "1");
File dataFolder2 = new File(origiFolder, "2");
Files.createDirectories(dataFolder1.toPath());
@@ -766,7 +767,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testGetTemporaryFiles() throws IOException
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstable1 = sstable(dataFolder, cfs, 0, 128);
Set<File> tmpFiles = getTemporaryFiles(dataFolder);
@@ -775,7 +776,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
try(LogTransaction log = new LogTransaction(OperationType.WRITE))
{
- Directories directories = new Directories(cfs.metadata);
+ Directories directories = new Directories(cfs.metadata());
File[] beforeSecondSSTable = dataFolder.listFiles(pathname -> !pathname.isDirectory());
@@ -834,7 +835,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File origiFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File origiFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
File dataFolder1 = new File(origiFolder, "1");
File dataFolder2 = new File(origiFolder, "2");
Files.createDirectories(dataFolder1.toPath());
@@ -993,7 +994,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
private static void testCorruptRecord(BiConsumer<LogTransaction, SSTableReader> modifier, boolean isRecoverable) throws IOException
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstableOld = sstable(dataFolder, cfs, 0, 128);
SSTableReader sstableNew = sstable(dataFolder, cfs, 1, 128);
@@ -1028,7 +1029,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{ // the corruption is recoverable but the commit record is unreadable so the transaction is still in progress
//This should remove new files
- LogTransaction.removeUnfinishedLeftovers(cfs.metadata);
+ LogTransaction.removeUnfinishedLeftovers(cfs.metadata());
// make sure to exclude the old files that were deleted by the modifier
assertFiles(dataFolder.getPath(), oldFiles);
@@ -1037,7 +1038,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
{ // if an intermediate line was also modified, it should ignore the tx log file
//This should not remove any files
- LogTransaction.removeUnfinishedLeftovers(cfs.metadata);
+ LogTransaction.removeUnfinishedLeftovers(cfs.metadata());
assertFiles(dataFolder.getPath(), Sets.newHashSet(Iterables.concat(newFiles,
oldFiles,
@@ -1065,7 +1066,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
private static void testObsoletedFilesChanged(Consumer<SSTableReader> modifier) throws IOException
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstableOld = sstable(dataFolder, cfs, 0, 128);
SSTableReader sstableNew = sstable(dataFolder, cfs, 1, 128);
@@ -1083,7 +1084,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
log.txnFile().commit();
//This should not remove the old files
- LogTransaction.removeUnfinishedLeftovers(cfs.metadata);
+ LogTransaction.removeUnfinishedLeftovers(cfs.metadata());
assertFiles(dataFolder.getPath(), Sets.newHashSet(Iterables.concat(
sstableNew.getAllFilePaths(),
@@ -1108,7 +1109,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testGetTemporaryFilesSafeAfterObsoletion() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstable = sstable(dataFolder, cfs, 0, 128);
LogTransaction logs = new LogTransaction(OperationType.COMPACTION);
@@ -1132,7 +1133,7 @@ public class LogTransactionTest extends AbstractTransactionalTest
public void testGetTemporaryFilesThrowsIfCompletingAfterObsoletion() throws Throwable
{
ColumnFamilyStore cfs = MockSchema.newCFS(KEYSPACE);
- File dataFolder = new Directories(cfs.metadata).getDirectoryForNewSSTables();
+ File dataFolder = new Directories(cfs.metadata()).getDirectoryForNewSSTables();
SSTableReader sstable = sstable(dataFolder, cfs, 0, 128);
LogTransaction logs = new LogTransaction(OperationType.COMPACTION);
@@ -1180,9 +1181,9 @@ public class LogTransactionTest extends AbstractTransactionalTest
FileHandle dFile = new FileHandle.Builder(descriptor.filenameFor(Component.DATA)).complete();
FileHandle iFile = new FileHandle.Builder(descriptor.filenameFor(Component.PRIMARY_INDEX)).complete();
- SerializationHeader header = SerializationHeader.make(cfs.metadata, Collections.emptyList());
- StatsMetadata metadata = (StatsMetadata) new MetadataCollector(cfs.metadata.comparator)
- .finalizeMetadata(cfs.metadata.partitioner.getClass().getCanonicalName(), 0.01f, -1, header)
+ SerializationHeader header = SerializationHeader.make(cfs.metadata(), Collections.emptyList());
+ StatsMetadata metadata = (StatsMetadata) new MetadataCollector(cfs.metadata().comparator)
+ .finalizeMetadata(cfs.metadata().partitioner.getClass().getCanonicalName(), 0.01f, -1, header)
.get(MetadataType.STATS);
SSTableReader reader = SSTableReader.internalOpen(descriptor,
components,
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/lifecycle/RealTransactionsTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/lifecycle/RealTransactionsTest.java b/test/unit/org/apache/cassandra/db/lifecycle/RealTransactionsTest.java
index b825f52..f4443f1 100644
--- a/test/unit/org/apache/cassandra/db/lifecycle/RealTransactionsTest.java
+++ b/test/unit/org/apache/cassandra/db/lifecycle/RealTransactionsTest.java
@@ -30,8 +30,8 @@ import org.junit.Test;
import junit.framework.Assert;
import org.apache.cassandra.SchemaLoader;
-import org.apache.cassandra.config.CFMetaData;
-import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.schema.TableMetadataRef;
+import org.apache.cassandra.schema.Schema;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Keyspace;
import org.apache.cassandra.db.SerializationHeader;
@@ -158,13 +158,13 @@ public class RealTransactionsTest extends SchemaLoader
long lastCheckObsoletion = System.nanoTime();
File directory = txn.originals().iterator().next().descriptor.directory;
Descriptor desc = cfs.newSSTableDescriptor(directory);
- CFMetaData metadata = Schema.instance.getCFMetaData(desc);
+ TableMetadataRef metadata = Schema.instance.getTableMetadataRef(desc);
rewriter.switchWriter(SSTableWriter.create(metadata,
desc,
0,
0,
0,
- SerializationHeader.make(cfs.metadata, txn.originals()),
+ SerializationHeader.make(cfs.metadata(), txn.originals()),
cfs.indexManager.listIndexes(),
txn));
while (ci.hasNext())
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/lifecycle/TrackerTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/lifecycle/TrackerTest.java b/test/unit/org/apache/cassandra/db/lifecycle/TrackerTest.java
index 65c7d0e..a5a1baf 100644
--- a/test/unit/org/apache/cassandra/db/lifecycle/TrackerTest.java
+++ b/test/unit/org/apache/cassandra/db/lifecycle/TrackerTest.java
@@ -34,7 +34,6 @@ import org.junit.BeforeClass;
import org.junit.Test;
import junit.framework.Assert;
-import org.apache.cassandra.MockSchema;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Memtable;
@@ -43,6 +42,7 @@ import org.apache.cassandra.db.commitlog.CommitLogPosition;
import org.apache.cassandra.db.compaction.OperationType;
import org.apache.cassandra.io.sstable.format.SSTableReader;
import org.apache.cassandra.notifications.*;
+import org.apache.cassandra.schema.MockSchema;
import org.apache.cassandra.utils.concurrent.OpOrder;
import static com.google.common.collect.ImmutableSet.copyOf;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/lifecycle/ViewTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/lifecycle/ViewTest.java b/test/unit/org/apache/cassandra/db/lifecycle/ViewTest.java
index a0e6e5f..f092854 100644
--- a/test/unit/org/apache/cassandra/db/lifecycle/ViewTest.java
+++ b/test/unit/org/apache/cassandra/db/lifecycle/ViewTest.java
@@ -32,13 +32,13 @@ import org.junit.BeforeClass;
import org.junit.Test;
import junit.framework.Assert;
-import org.apache.cassandra.MockSchema;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Memtable;
import org.apache.cassandra.db.PartitionPosition;
import org.apache.cassandra.dht.AbstractBounds;
import org.apache.cassandra.io.sstable.format.SSTableReader;
+import org.apache.cassandra.schema.MockSchema;
import static com.google.common.collect.ImmutableSet.copyOf;
import static com.google.common.collect.ImmutableSet.of;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/marshal/CompositeTypeTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/marshal/CompositeTypeTest.java b/test/unit/org/apache/cassandra/db/marshal/CompositeTypeTest.java
index 2bf4082..9813fd9 100644
--- a/test/unit/org/apache/cassandra/db/marshal/CompositeTypeTest.java
+++ b/test/unit/org/apache/cassandra/db/marshal/CompositeTypeTest.java
@@ -29,7 +29,7 @@ import static org.junit.Assert.assertEquals;
import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.Util;
-import org.apache.cassandra.config.ColumnDefinition;
+import org.apache.cassandra.schema.ColumnMetadata;
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.rows.Cell;
import org.apache.cassandra.db.rows.Row;
@@ -38,7 +38,6 @@ import org.apache.cassandra.exceptions.ConfigurationException;
import org.apache.cassandra.exceptions.SyntaxException;
import org.apache.cassandra.schema.KeyspaceParams;
import org.apache.cassandra.serializers.MarshalException;
-import org.apache.cassandra.serializers.UTF8Serializer;
import org.apache.cassandra.utils.*;
public class CompositeTypeTest
@@ -190,13 +189,13 @@ public class CompositeTypeTest
ByteBuffer key = ByteBufferUtil.bytes("k");
long ts = FBUtilities.timestampMicros();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname5).add("val", "cname5").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname1).add("val", "cname1").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname4).add("val", "cname4").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname2).add("val", "cname2").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname3).add("val", "cname3").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname5).add("val", "cname5").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname1).add("val", "cname1").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname4).add("val", "cname4").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname2).add("val", "cname2").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname3).add("val", "cname3").build().applyUnsafe();
- ColumnDefinition cdef = cfs.metadata.getColumnDefinition(ByteBufferUtil.bytes("val"));
+ ColumnMetadata cdef = cfs.metadata().getColumn(ByteBufferUtil.bytes("val"));
ImmutableBTreePartition readPartition = Util.getOnlyPartitionUnfiltered(Util.cmd(cfs, key).build());
Iterator<Row> iter = readPartition.iterator();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/marshal/DynamicCompositeTypeTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/marshal/DynamicCompositeTypeTest.java b/test/unit/org/apache/cassandra/db/marshal/DynamicCompositeTypeTest.java
index 0a3c39c..068daf6 100644
--- a/test/unit/org/apache/cassandra/db/marshal/DynamicCompositeTypeTest.java
+++ b/test/unit/org/apache/cassandra/db/marshal/DynamicCompositeTypeTest.java
@@ -31,7 +31,7 @@ import static org.junit.Assert.fail;
import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.Util;
-import org.apache.cassandra.config.ColumnDefinition;
+import org.apache.cassandra.schema.ColumnMetadata;
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.rows.Cell;
import org.apache.cassandra.db.rows.Row;
@@ -193,13 +193,13 @@ public class DynamicCompositeTypeTest
ByteBuffer key = ByteBufferUtil.bytes("k");
long ts = FBUtilities.timestampMicros();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname5).add("val", "cname5").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname1).add("val", "cname1").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname4).add("val", "cname4").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname2).add("val", "cname2").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname3).add("val", "cname3").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname5).add("val", "cname5").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname1).add("val", "cname1").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname4).add("val", "cname4").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname2).add("val", "cname2").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname3).add("val", "cname3").build().applyUnsafe();
- ColumnDefinition cdef = cfs.metadata.getColumnDefinition(ByteBufferUtil.bytes("val"));
+ ColumnMetadata cdef = cfs.metadata().getColumn(ByteBufferUtil.bytes("val"));
ImmutableBTreePartition readPartition = Util.getOnlyPartitionUnfiltered(Util.cmd(cfs, key).build());
Iterator<Row> iter = readPartition.iterator();
@@ -230,13 +230,13 @@ public class DynamicCompositeTypeTest
ByteBuffer key = ByteBufferUtil.bytes("kr");
long ts = FBUtilities.timestampMicros();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname5).add("val", "cname5").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname1).add("val", "cname1").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname4).add("val", "cname4").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname2).add("val", "cname2").build().applyUnsafe();
- new RowUpdateBuilder(cfs.metadata, ts, key).clustering(cname3).add("val", "cname3").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname5).add("val", "cname5").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname1).add("val", "cname1").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname4).add("val", "cname4").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname2).add("val", "cname2").build().applyUnsafe();
+ new RowUpdateBuilder(cfs.metadata(), ts, key).clustering(cname3).add("val", "cname3").build().applyUnsafe();
- ColumnDefinition cdef = cfs.metadata.getColumnDefinition(ByteBufferUtil.bytes("val"));
+ ColumnMetadata cdef = cfs.metadata().getColumn(ByteBufferUtil.bytes("val"));
ImmutableBTreePartition readPartition = Util.getOnlyPartitionUnfiltered(Util.cmd(cfs, key).build());
Iterator<Row> iter = readPartition.iterator();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af3fe39d/test/unit/org/apache/cassandra/db/partition/PartitionImplementationTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/partition/PartitionImplementationTest.java b/test/unit/org/apache/cassandra/db/partition/PartitionImplementationTest.java
index 90d6310..7bdfdb5 100644
--- a/test/unit/org/apache/cassandra/db/partition/PartitionImplementationTest.java
+++ b/test/unit/org/apache/cassandra/db/partition/PartitionImplementationTest.java
@@ -35,8 +35,8 @@ import org.junit.Test;
import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.Util;
-import org.apache.cassandra.config.CFMetaData;
-import org.apache.cassandra.config.ColumnDefinition;
+import org.apache.cassandra.schema.ColumnMetadata;
+import org.apache.cassandra.schema.TableMetadata;
import org.apache.cassandra.cql3.ColumnIdentifier;
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.filter.ColumnFilter;
@@ -62,7 +62,7 @@ public class PartitionImplementationTest
private static final int TIMESTAMP = KEY_RANGE + 1;
- private static CFMetaData cfm;
+ private static TableMetadata metadata;
private Random rand = new Random(2);
@BeforeClass
@@ -70,15 +70,15 @@ public class PartitionImplementationTest
{
SchemaLoader.prepareServer();
- cfm = CFMetaData.Builder.create(KEYSPACE, CF)
- .addPartitionKey("pk", AsciiType.instance)
- .addClusteringColumn("ck", AsciiType.instance)
- .addRegularColumn("col", AsciiType.instance)
- .addStaticColumn("static_col", AsciiType.instance)
- .build();
- SchemaLoader.createKeyspace(KEYSPACE,
- KeyspaceParams.simple(1),
- cfm);
+ metadata =
+ TableMetadata.builder(KEYSPACE, CF)
+ .addPartitionKeyColumn("pk", AsciiType.instance)
+ .addClusteringColumn("ck", AsciiType.instance)
+ .addRegularColumn("col", AsciiType.instance)
+ .addStaticColumn("static_col", AsciiType.instance)
+ .build();
+
+ SchemaLoader.createKeyspace(KEYSPACE, KeyspaceParams.simple(1), metadata);
}
private List<Row> generateRows()
@@ -100,7 +100,7 @@ public class PartitionImplementationTest
Row makeRow(Clustering clustering, String colValue)
{
- ColumnDefinition defCol = cfm.getColumnDefinition(new ColumnIdentifier("col", true));
+ ColumnMetadata defCol = metadata.getColumn(new ColumnIdentifier("col", true));
Row.Builder row = BTreeRow.unsortedBuilder(TIMESTAMP);
row.newRow(clustering);
row.addCell(BufferCell.live(defCol, TIMESTAMP, ByteBufferUtil.bytes(colValue)));
@@ -109,7 +109,7 @@ public class PartitionImplementationTest
Row makeStaticRow()
{
- ColumnDefinition defCol = cfm.getColumnDefinition(new ColumnIdentifier("static_col", true));
+ ColumnMetadata defCol = metadata.getColumn(new ColumnIdentifier("static_col", true));
Row.Builder row = BTreeRow.unsortedBuilder(TIMESTAMP);
row.newRow(Clustering.STATIC_CLUSTERING);
row.addCell(BufferCell.live(defCol, TIMESTAMP, ByteBufferUtil.bytes("static value")));
@@ -148,7 +148,7 @@ public class PartitionImplementationTest
markers.add(open);
markers.add(close);
}
- markers.sort(cfm.comparator);
+ markers.sort(metadata.comparator);
RangeTombstoneMarker toAdd = null;
Set<DeletionTime> open = new HashSet<>();
@@ -163,7 +163,7 @@ public class PartitionImplementationTest
{
if (toAdd != null)
{
- if (cfm.comparator.compare(toAdd, marker) != 0)
+ if (metadata.comparator.compare(toAdd, marker) != 0)
content.add(toAdd);
else
{
@@ -187,7 +187,7 @@ public class PartitionImplementationTest
{
if (toAdd != null)
{
- if (cfm.comparator.compare(toAdd, marker) != 0)
+ if (metadata.comparator.compare(toAdd, marker) != 0)
content.add(toAdd);
else
{
@@ -212,7 +212,7 @@ public class PartitionImplementationTest
private Clustering clustering(int i)
{
- return cfm.comparator.make(String.format("Row%06d", i));
+ return metadata.comparator.make(String.format("Row%06d", i));
}
private void test(Supplier<Collection<? extends Unfiltered>> content, Row staticRow)
@@ -233,18 +233,18 @@ public class PartitionImplementationTest
private void testIter(Supplier<Collection<? extends Unfiltered>> contentSupplier, Row staticRow)
{
- NavigableSet<Clusterable> sortedContent = new TreeSet<Clusterable>(cfm.comparator);
+ NavigableSet<Clusterable> sortedContent = new TreeSet<Clusterable>(metadata.comparator);
sortedContent.addAll(contentSupplier.get());
AbstractBTreePartition partition;
- try (UnfilteredRowIterator iter = new Util.UnfilteredSource(cfm, Util.dk("pk"), staticRow, sortedContent.stream().map(x -> (Unfiltered) x).iterator()))
+ try (UnfilteredRowIterator iter = new Util.UnfilteredSource(metadata, Util.dk("pk"), staticRow, sortedContent.stream().map(x -> (Unfiltered) x).iterator()))
{
partition = ImmutableBTreePartition.create(iter);
}
- ColumnDefinition defCol = cfm.getColumnDefinition(new ColumnIdentifier("col", true));
+ ColumnMetadata defCol = metadata.getColumn(new ColumnIdentifier("col", true));
ColumnFilter cf = ColumnFilter.selectionBuilder().add(defCol).build();
- Function<? super Clusterable, ? extends Clusterable> colFilter = x -> x instanceof Row ? ((Row) x).filter(cf, cfm) : x;
- Slices slices = Slices.with(cfm.comparator, Slice.make(clustering(KEY_RANGE / 4), clustering(KEY_RANGE * 3 / 4)));
+ Function<? super Clusterable, ? extends Clusterable> colFilter = x -> x instanceof Row ? ((Row) x).filter(cf, metadata) : x;
+ Slices slices = Slices.with(metadata.comparator, Slice.make(clustering(KEY_RANGE / 4), clustering(KEY_RANGE * 3 / 4)));
Slices multiSlices = makeSlices();
// lastRow
@@ -278,44 +278,44 @@ public class PartitionImplementationTest
// unfiltered iterator
assertIteratorsEqual(sortedContent.iterator(),
- partition.unfilteredIterator(ColumnFilter.all(cfm), Slices.ALL, false));
+ partition.unfilteredIterator(ColumnFilter.all(metadata), Slices.ALL, false));
// column-filtered
assertIteratorsEqual(sortedContent.stream().map(colFilter).iterator(),
partition.unfilteredIterator(cf, Slices.ALL, false));
// sliced
assertIteratorsEqual(slice(sortedContent, slices.get(0)),
- partition.unfilteredIterator(ColumnFilter.all(cfm), slices, false));
+ partition.unfilteredIterator(ColumnFilter.all(metadata), slices, false));
assertIteratorsEqual(streamOf(slice(sortedContent, slices.get(0))).map(colFilter).iterator(),
partition.unfilteredIterator(cf, slices, false));
// randomly multi-sliced
assertIteratorsEqual(slice(sortedContent, multiSlices),
- partition.unfilteredIterator(ColumnFilter.all(cfm), multiSlices, false));
+ partition.unfilteredIterator(ColumnFilter.all(metadata), multiSlices, false));
assertIteratorsEqual(streamOf(slice(sortedContent, multiSlices)).map(colFilter).iterator(),
partition.unfilteredIterator(cf, multiSlices, false));
// reversed
assertIteratorsEqual(sortedContent.descendingIterator(),
- partition.unfilteredIterator(ColumnFilter.all(cfm), Slices.ALL, true));
+ partition.unfilteredIterator(ColumnFilter.all(metadata), Slices.ALL, true));
assertIteratorsEqual(sortedContent.descendingSet().stream().map(colFilter).iterator(),
partition.unfilteredIterator(cf, Slices.ALL, true));
assertIteratorsEqual(invert(slice(sortedContent, slices.get(0))),
- partition.unfilteredIterator(ColumnFilter.all(cfm), slices, true));
+ partition.unfilteredIterator(ColumnFilter.all(metadata), slices, true));
assertIteratorsEqual(streamOf(invert(slice(sortedContent, slices.get(0)))).map(colFilter).iterator(),
partition.unfilteredIterator(cf, slices, true));
assertIteratorsEqual(invert(slice(sortedContent, multiSlices)),
- partition.unfilteredIterator(ColumnFilter.all(cfm), multiSlices, true));
+ partition.unfilteredIterator(ColumnFilter.all(metadata), multiSlices, true));
assertIteratorsEqual(streamOf(invert(slice(sortedContent, multiSlices))).map(colFilter).iterator(),
partition.unfilteredIterator(cf, multiSlices, true));
// search iterator
- testSearchIterator(sortedContent, partition, ColumnFilter.all(cfm), false);
+ testSearchIterator(sortedContent, partition, ColumnFilter.all(metadata), false);
testSearchIterator(sortedContent, partition, cf, false);
- testSearchIterator(sortedContent, partition, ColumnFilter.all(cfm), true);
+ testSearchIterator(sortedContent, partition, ColumnFilter.all(metadata), true);
testSearchIterator(sortedContent, partition, cf, true);
// sliceable iter
- testSlicingOfIterators(sortedContent, partition, ColumnFilter.all(cfm), false);
+ testSlicingOfIterators(sortedContent, partition, ColumnFilter.all(metadata), false);
testSlicingOfIterators(sortedContent, partition, cf, false);
- testSlicingOfIterators(sortedContent, partition, ColumnFilter.all(cfm), true);
+ testSlicingOfIterators(sortedContent, partition, ColumnFilter.all(metadata), true);
testSlicingOfIterators(sortedContent, partition, cf, true);
}
@@ -338,14 +338,14 @@ public class PartitionImplementationTest
assertEquals(expected == null, row == null);
if (row == null)
continue;
- assertRowsEqual(expected.filter(cf, cfm), row);
+ assertRowsEqual(expected.filter(cf, metadata), row);
}
}
Slices makeSlices()
{
int pos = 0;
- Slices.Builder builder = new Slices.Builder(cfm.comparator);
+ Slices.Builder builder = new Slices.Builder(metadata.comparator);
while (pos <= KEY_RANGE)
{
int skip = rand.nextInt(KEY_RANGE / 10) * (rand.nextInt(3) + 2 / 3); // increased chance of getting 0
@@ -362,13 +362,13 @@ public class PartitionImplementationTest
void testSlicingOfIterators(NavigableSet<Clusterable> sortedContent, AbstractBTreePartition partition, ColumnFilter cf, boolean reversed)
{
- Function<? super Clusterable, ? extends Clusterable> colFilter = x -> x instanceof Row ? ((Row) x).filter(cf, cfm) : x;
+ Function<? super Clusterable, ? extends Clusterable> colFilter = x -> x instanceof Row ? ((Row) x).filter(cf, metadata) : x;
Slices slices = makeSlices();
// fetch each slice in turn
for (Slice slice : (Iterable<Slice>) () -> directed(slices, reversed))
{
- try (UnfilteredRowIterator slicedIter = partition.unfilteredIterator(cf, Slices.with(cfm.comparator, slice), reversed))
+ try (UnfilteredRowIterator slicedIter = partition.unfilteredIterator(cf, Slices.with(metadata.comparator, slice), reversed))
{
assertIteratorsEqual(streamOf(directed(slice(sortedContent, slice), reversed)).map(colFilter).iterator(),
slicedIter);
@@ -441,8 +441,8 @@ public class PartitionImplementationTest
Clusterable[] a2 = (Clusterable[]) Iterators.toArray(it2, Clusterable.class);
if (Arrays.equals(a1, a2))
return;
- String a1s = Stream.of(a1).map(x -> "\n" + (x instanceof Unfiltered ? ((Unfiltered) x).toString(cfm) : x.toString())).collect(Collectors.toList()).toString();
- String a2s = Stream.of(a2).map(x -> "\n" + (x instanceof Unfiltered ? ((Unfiltered) x).toString(cfm) : x.toString())).collect(Collectors.toList()).toString();
+ String a1s = Stream.of(a1).map(x -> "\n" + (x instanceof Unfiltered ? ((Unfiltered) x).toString(metadata) : x.toString())).collect(Collectors.toList()).toString();
+ String a2s = Stream.of(a2).map(x -> "\n" + (x instanceof Unfiltered ? ((Unfiltered) x).toString(metadata) : x.toString())).collect(Collectors.toList()).toString();
assertArrayEquals("Arrays differ. Expected " + a1s + " was " + a2s, a1, a2);
}
@@ -451,7 +451,7 @@ public class PartitionImplementationTest
NavigableSet<Clusterable> nexts = sortedContent.tailSet(cl, true);
if (nexts.isEmpty())
return null;
- Row row = nexts.first() instanceof Row && cfm.comparator.compare(cl, nexts.first()) == 0 ? (Row) nexts.first() : null;
+ Row row = nexts.first() instanceof Row && metadata.comparator.compare(cl, nexts.first()) == 0 ? (Row) nexts.first() : null;
for (Clusterable next : nexts)
if (next instanceof RangeTombstoneMarker)
{
@@ -459,7 +459,7 @@ public class PartitionImplementationTest
if (!rt.isClose(false))
return row;
DeletionTime delTime = rt.closeDeletionTime(false);
- return row == null ? BTreeRow.emptyDeletedRow(cl, Deletion.regular(delTime)) : row.filter(ColumnFilter.all(cfm), delTime, true, cfm);
+ return row == null ? BTreeRow.emptyDeletedRow(cl, Deletion.regular(delTime)) : row.filter(ColumnFilter.all(metadata), delTime, true, metadata);
}
return row;
}