[ https://issues.apache.org/jira/browse/CASSANDRA-5911?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13817641#comment-13817641 ]
Jonathan Ellis commented on CASSANDRA-5911: ------------------------------------------- Looks to me like we're still providing "best effort" cleanup after each flush based on {{allocator.numSegmentsAvailable > 0}}. I still think we need to *require* forcing a new segment in the drop scenario, and we don't really care otherwise. > Commit logs are not removed after nodetool flush or nodetool drain > ------------------------------------------------------------------ > > Key: CASSANDRA-5911 > URL: https://issues.apache.org/jira/browse/CASSANDRA-5911 > Project: Cassandra > Issue Type: Bug > Components: Core > Reporter: J.B. Langston > Assignee: Vijay > Priority: Minor > Fix For: 2.0.3 > > Attachments: 0001-5911-v2.patch, 0001-5911-v3.patch, > 0001-CASSANDRA-5911.patch, 6528_140171_knwmuqxe9bjv5re_system.log > > > Commit logs are not removed after nodetool flush or nodetool drain. This can > lead to unnecessary commit log replay during startup. I've reproduced this > on Apache Cassandra 1.2.8. Usually this isn't much of an issue but on a > Solr-indexed column family in DSE, each replayed mutation has to be reindexed > which can make startup take a long time (on the order of 20-30 min). > Reproduction follows: > {code} > jblangston:bin jblangston$ ./cassandra > /dev/null > jblangston:bin jblangston$ ../tools/bin/cassandra-stress -n 20000000 > > /dev/null > jblangston:bin jblangston$ du -h ../commitlog > 576M ../commitlog > jblangston:bin jblangston$ nodetool flush > jblangston:bin jblangston$ du -h ../commitlog > 576M ../commitlog > jblangston:bin jblangston$ nodetool drain > jblangston:bin jblangston$ du -h ../commitlog > 576M ../commitlog > jblangston:bin jblangston$ pkill java > jblangston:bin jblangston$ du -h ../commitlog > 576M ../commitlog > jblangston:bin jblangston$ ./cassandra -f | grep Replaying > INFO 10:03:42,915 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566761.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566762.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566763.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566764.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566765.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566766.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566767.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566768.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566769.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566770.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566771.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566772.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566773.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566774.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566775.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566776.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566777.log, > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566778.log > INFO 10:03:42,922 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566761.log > INFO 10:03:43,907 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566762.log > INFO 10:03:43,907 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566763.log > INFO 10:03:43,907 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566764.log > INFO 10:03:43,908 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566765.log > INFO 10:03:43,908 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566766.log > INFO 10:03:43,908 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566767.log > INFO 10:03:43,909 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566768.log > INFO 10:03:43,909 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566769.log > INFO 10:03:43,909 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566770.log > INFO 10:03:43,910 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566771.log > INFO 10:03:43,910 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566772.log > INFO 10:03:43,911 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566773.log > INFO 10:03:43,911 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566774.log > INFO 10:03:43,911 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566775.log > INFO 10:03:43,912 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566776.log > INFO 10:03:43,912 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566777.log > INFO 10:03:43,912 Replaying > /opt/apache-cassandra-1.2.8/commitlog/CommitLog-2-1377096566778.log > {code} -- This message was sent by Atlassian JIRA (v6.1#6144)