Benedict created CASSANDRA-8763:
-----------------------------------

             Summary: Trickle fsync should not be optional, but should have a 
large default interval
                 Key: CASSANDRA-8763
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8763
             Project: Cassandra
          Issue Type: Improvement
          Components: Core
            Reporter: Benedict
            Priority: Minor
             Fix For: 2.1.4


The reason to avoid "trickle fsync" is that it permits more efficient flushing; 
however once we get above a few hundred MBs, it really doesn't make a great 
deal of difference. Contrarily, it can cause runaway utilisation of memory by 
dirty pages in the page cache, damaging performance for other components and 
potentially invoking the kernel OOM killer. I suggest we pick an amount of 
memory proportional to the size of the heap (or check the actual amount of 
memory in the system), and divide this by the number of flush threads we have, 
and use this as the default trickle fsync interval, and we _always_ "trickle" 
fsync, ignoring the ability to disable it. We only permit on override of the 
size of the interval (if you want to disable it, you can set the interval 
absurdly large).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to