use of org.apache.cassandra.db.ColumnFamily in project eiger by wlloyd.
the class SSTableImportTest method testImportSuperCf.
@Test
public void testImportSuperCf() throws IOException, ParseException, URISyntaxException {
String jsonUrl = resourcePath("SuperCF.json");
File tempSS = tempSSTableFile("Keyspace1", "Super4");
SSTableImport.importJson(jsonUrl, "Keyspace1", "Super4", tempSS.getPath());
// Verify results
SSTableReader reader = SSTableReader.open(Descriptor.fromFilename(tempSS.getPath()));
QueryFilter qf = QueryFilter.getNamesFilter(Util.dk("rowA"), new QueryPath("Super4", null, null), ByteBufferUtil.bytes("superA"));
ColumnFamily cf = qf.getSSTableColumnIterator(reader).getColumnFamily();
IColumn superCol = cf.getColumn(ByteBufferUtil.bytes("superA"));
assert superCol != null;
assert superCol.getSubColumns().size() > 0;
IColumn subColumn = superCol.getSubColumn(ByteBufferUtil.bytes("636f6c4141"));
assert subColumn.value().equals(hexToBytes("76616c75654141"));
}
use of org.apache.cassandra.db.ColumnFamily in project eiger by wlloyd.
the class SSTableImportTest method testImportCounterCf.
@Test
public void testImportCounterCf() throws IOException, URISyntaxException {
// Import JSON to temp SSTable file
String jsonUrl = resourcePath("CounterCF.json");
File tempSS = tempSSTableFile("Keyspace1", "Counter1");
SSTableImport.importJson(jsonUrl, "Keyspace1", "Counter1", tempSS.getPath());
// Verify results
SSTableReader reader = SSTableReader.open(Descriptor.fromFilename(tempSS.getPath()));
QueryFilter qf = QueryFilter.getIdentityFilter(Util.dk("rowA"), new QueryPath("Counter1"));
IColumnIterator iter = qf.getSSTableColumnIterator(reader);
ColumnFamily cf = iter.getColumnFamily();
while (iter.hasNext()) cf.addColumn(iter.next());
IColumn c = cf.getColumn(ByteBufferUtil.bytes("colAA"));
assert c instanceof CounterColumn : c;
assert ((CounterColumn) c).total() == 42;
}
use of org.apache.cassandra.db.ColumnFamily in project eiger by wlloyd.
the class SSTableImportTest method testImportUnsortedMode.
@Test
public void testImportUnsortedMode() throws IOException, URISyntaxException {
String jsonUrl = resourcePath("UnsortedSuperCF.json");
File tempSS = tempSSTableFile("Keyspace1", "Super4");
ColumnFamily columnFamily = ColumnFamily.create("Keyspace1", "Super4");
IPartitioner<?> partitioner = DatabaseDescriptor.getPartitioner();
SSTableImport.setKeyCountToImport(3);
int result = SSTableImport.importSorted(jsonUrl, columnFamily, tempSS.getPath(), partitioner);
assert result == -1;
}
use of org.apache.cassandra.db.ColumnFamily in project eiger by wlloyd.
the class SSTableImportTest method testImportSimpleCfOldFormat.
@Test
public void testImportSimpleCfOldFormat() throws IOException, URISyntaxException {
// Import JSON to temp SSTable file
String jsonUrl = resourcePath("SimpleCF.oldformat.json");
File tempSS = tempSSTableFile("Keyspace1", "Standard1");
SSTableImport.importJson(jsonUrl, "Keyspace1", "Standard1", tempSS.getPath());
// Verify results
SSTableReader reader = SSTableReader.open(Descriptor.fromFilename(tempSS.getPath()));
QueryFilter qf = QueryFilter.getIdentityFilter(Util.dk("rowA"), new QueryPath("Standard1"));
IColumnIterator iter = qf.getSSTableColumnIterator(reader);
ColumnFamily cf = iter.getColumnFamily();
while (iter.hasNext()) cf.addColumn(iter.next());
assert cf.getColumn(ByteBufferUtil.bytes("colAA")).value().equals(hexToBytes("76616c4141"));
assert !(cf.getColumn(ByteBufferUtil.bytes("colAA")) instanceof DeletedColumn);
IColumn expCol = cf.getColumn(ByteBufferUtil.bytes("colAC"));
assert expCol.value().equals(hexToBytes("76616c4143"));
assert expCol instanceof ExpiringColumn;
assert ((ExpiringColumn) expCol).getTimeToLive() == 42 && expCol.getLocalDeletionTime() == 2000000000;
}
use of org.apache.cassandra.db.ColumnFamily in project eiger by wlloyd.
the class SSTableUtils method assertContentEquals.
public static void assertContentEquals(IColumnIterator lhs, IColumnIterator rhs) throws IOException {
assertEquals(lhs.getKey(), rhs.getKey());
// check metadata
ColumnFamily lcf = lhs.getColumnFamily();
ColumnFamily rcf = rhs.getColumnFamily();
if (lcf == null) {
if (rcf == null)
return;
throw new AssertionError("LHS had no content for " + rhs.getKey());
} else if (rcf == null)
throw new AssertionError("RHS had no content for " + lhs.getKey());
assertEquals(lcf.getMarkedForDeleteAt(), rcf.getMarkedForDeleteAt());
assertEquals(lcf.getLocalDeletionTime(), rcf.getLocalDeletionTime());
// iterate columns
while (lhs.hasNext()) {
IColumn clhs = lhs.next();
assert rhs.hasNext() : "LHS contained more columns than RHS for " + lhs.getKey();
IColumn crhs = rhs.next();
assertEquals("Mismatched columns for " + lhs.getKey(), clhs, crhs);
}
assert !rhs.hasNext() : "RHS contained more columns than LHS for " + lhs.getKey();
}
Aggregations