Description
After taking a node (DC) out of replication, running a cleanup does not get rid of the data on the node. The SSTables remain on disk and no data is cleared out.
The following entry is recorded in system.log:
INFO [CompactionExecutor:8] 2015-06-25 12:33:01,417 CompactionManager.java (line 527) Cleanup cannot run before a node has joined the ring
STEPS TO REPRODUCE
- Build a (C* 2.0.10) cluster with multiple DCs.
- Run cassandra-stress -n1 to create schema.
- Alter schema to replicate to all DCs.
cqlsh> ALTER KEYSPACE "Keyspace1" WITH replication = { 'class' : 'NetworkTopologyStrategy', 'DC1' : 2, 'DC2' : 2, 'DC3' : 1 } ;
- Run cassandra-stress -n100000 to generate data.
- Alter schema to stop replication to DC3.
- On node in DC3, run nodetool cleanup.
WORKAROUND
- Stop Cassandra.
- Manually delete the SSTables on disk.
- Start Cassandra.
Attachments
Issue Links
- is superceded by
-
CASSANDRA-13526 nodetool cleanup on KS with no replicas should remove old data, not silently complete
- Resolved