Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
Normal
Description
cassandra-shuffle tool fails to insert calculated relocations into the system keyspace as it is not user-modifiable. When run, the following exception is thrown after printing out the list of relocations for the first node in ring:
Exception in thread "main" java.lang.RuntimeException: InvalidRequestException(why:system keyspace is not user-modifiable.)
at org.apache.cassandra.tools.Shuffle.executeCqlQuery(Shuffle.java:516)
at org.apache.cassandra.tools.Shuffle.shuffle(Shuffle.java:359)
at org.apache.cassandra.tools.Shuffle.main(Shuffle.java:678)
Caused by: InvalidRequestException(why:system keyspace is not user-modifiable.)
at org.apache.cassandra.thrift.Cassandra$execute_cql3_query_result.read(Cassandra.java:37849)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
at org.apache.cassandra.thrift.Cassandra$Client.recv_execute_cql3_query(Cassandra.java:1562)
at org.apache.cassandra.thrift.Cassandra$Client.execute_cql3_query(Cassandra.java:1547)
at org.apache.cassandra.tools.CassandraClient.execute_cql_query(Shuffle.java:733)
at org.apache.cassandra.tools.Shuffle.executeCqlQuery(Shuffle.java:502)
... 2 more
By quickly checking the code it seems that the patch set for CASSANDRA-4874 disallows modifications to system keyspace again (they were previously allowed by CASSANDRA-4664) thus rendering cassandra-shuffle unable to do its job.