Hi,
I am trying to write a unit test for my code that uses CassandraTemplate. Since I use TestNG, I have to manually start embedded cassandra by using this construct (from cassandra-unit):
@BeforeClass
public void startCassandra() throws InterruptedException, TTransportException, ConfigurationException, IOException
{
EmbeddedCassandraServerHelper.startEmbeddedCassandra();
}
@BeforeMethod
public void cleanCassandra() throws InterruptedException, TTransportException, ConfigurationException, IOException
{
EmbeddedCassandraServerHelper.cleanEmbeddedCassandra();
}
However, I get this exception during startup:
2014-06-11 14:08:25 ERROR [Thrift:1] CassandraDaemon - Exception in thread Thread[Thrift:1,5,main]
java.lang.NoSuchMethodError: org.apache.cassandra.thrift.CfDef.setIndex_interval(I)Lorg/apache/cassandra/thrift/CfDef;
at org.apache.cassandra.config.CFMetaData.toThrift(CFMetaData.java:1170)
at org.apache.cassandra.config.KSMetaData.toThrift(KSMetaData.java:187)
at org.apache.cassandra.thrift.CassandraServer.describe_keyspace(CassandraServer.java:1106)
at org.apache.cassandra.thrift.CassandraServer.describe_keyspaces(CassandraServer.java:1370)
at org.apache.cassandra.thrift.Cassandra$Processor$describe_keyspaces.getResult(Cassandra.java:3714)
at org.apache.cassandra.thrift.Cassandra$Processor$describe_keyspaces.getResult(Cassandra.java:3702)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:194)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
I have added the following to my pom.xml:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-cassandra</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.cassandraunit</groupId>
<artifactId>cassandra-unit</artifactId>
<version>${cassandra-unit.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<artifactId>cassandra-all</artifactId>
<groupId>org.apache.cassandra</groupId>
</exclusion>
<exclusion>
<groupId>com.datastax.cassandra</groupId>
<artifactId>cassandra-driver-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.cassandraunit</groupId>
<artifactId>cassandra-unit-spring</artifactId>
<version>${cassandra-unit.version}</version>
<scope>test</scope>
</dependency>
The version is set to 2.0.2.1
Any idea?
regards,
Wim