Robert Coli created CASSANDRA-4446:
--------------------------------------

             Summary: nodetool drain sometimes doesn't mark commitlog fully 
flushed
                 Key: CASSANDRA-4446
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4446
             Project: Cassandra
          Issue Type: New Feature
    Affects Versions: 1.0.10
         Environment: ubuntu 10.04 64bit
Linux HOSTNAME 2.6.32-345-ec2 #48-Ubuntu SMP Wed May 2 19:29:55 UTC 2012 x86_64 
GNU/Linux
sun JVM
cassandra 1.0.10 installed from apache deb
            Reporter: Robert Coli


I recently wiped a customer's QA cluster. I drained each node and verified that 
they were drained. When I restarted the nodes, I saw the commitlog replay 
create a memtable and then flush it. I have attached a sanitized log snippet 
from a representative node at the time. 

It appears to show the following :
1) Drain begins
2) Drain triggers flush
3) Flush triggers compaction
4) StorageService logs DRAINED message
5) compaction thread excepts
6) on restart, same CF creates a memtable
7) and then flushes it [1]

The columnfamily involved in the replay in 7) is the CF for which the 
compaction thread excepted in 5). This seems to suggest a timing issue whereby 
the exception in 5) prevents the flush in 3) from marking all the segments 
flushed, causing them to replay after restart.

[1] Isn't commitlog replay not supposed to automatically trigger a flush in 
modern cassandra?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to