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

Edward Capriolo commented on CASSANDRA-1181:
--------------------------------------------

I think ThreadPriority will help, however CPU Priority is not directly linked 
to IO scheduling. I believe between the the statistics cassandra keeps we could 
accomplish something adaptive. Also if we want a solution that is not 100% java 
pure we can read /proc/diskstats and use actual disk utilization to be adaptive.

All these methods I suggested fall apart if non-compaction traffic is thrashing 
the disk, but if that were the case the node was not healthy in the first place.

> kinder gentler compaction
> -------------------------
>
>                 Key: CASSANDRA-1181
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1181
>             Project: Cassandra
>          Issue Type: Task
>            Reporter: Jonathan Ellis
>            Assignee: Brandon Williams
>             Fix For: 0.7
>
>         Attachments: CompactionManager.java
>
>
> I suggested this in a ML thread but it seems that nobody actually tried it.  
> I think it's worth following up on:
> You could try setting the compaction thread to a lower priority.  You could 
> add a thread priority to NamedThreadPool, and pass that up from 
> CompactionExecutor constructor.  According to 
> http://www.javamex.com/tutorials/threads/priority_what.shtml you have to run 
> as root and add a JVM option to get this to work.
> In particular, Brandon saw stress.py read latencies spike to 100ms during 
> [anti]compaction on a 2 core machine.  I'd like to see if this can mitigate 
> that.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to