[ 
https://issues.apache.org/jira/browse/CASSANDRA-3363?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13130747#comment-13130747
 ] 

Sylvain Lebresne commented on CASSANDRA-3363:
---------------------------------------------

An alternative to waiting the latch before triggering the next task would be to 
make sure that we've released the latch before triggering that next task. I see 
two easy ways to do this:
  # move the submit of a next task outside of the compactionTask completely and 
move it in CompactionManager after the task execution. I kind of like that 
because I don't think triggering the next compaction should be the job of the 
compactionTask itself (but I'm more talking of a feeling here than anything 
technical).
  # have compactionTask call a protected finalize() method at the end of 
execute (the exact same than the submitNextTask of this patch but I'd prefer a 
less specific name). The leveledCompaction would only override that (i.e, it 
wouldn't override execute anymore) and countDown the latch there.

I think those would be less ugly, though the patch looks ok technically 
speaking.
                
> Allow one leveled compaction task to kick off another
> -----------------------------------------------------
>
>                 Key: CASSANDRA-3363
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3363
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 1.0.0
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>              Labels: compaction
>             Fix For: 1.0.1
>
>         Attachments: 3363.txt
>
>
> Leveled compaction wants to prevent multiple tasks from running at once, but 
> this check also defeats the "kick off another compaction if there is more 
> work to do" code in CompactionTask.  So currently LCS relies completely on 
> the every-five-minutes compaction check, which is not enough to keep up with 
> heavy insert load.

--
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