(Assuming 1.0* release)
From the comments in cassandra.yaml
# Number of simultaneous compactions to allow, NOT including
# validation "compactions" for anti-entropy repair. Simultaneous
# compactions can help preserve read performance in a mixed read/write
# workload, by mitigating the tendency of small sstables to accumulate
# during a single long running compactions. The default is usually
# fine and if you experience problems with compaction running too
# slowly or too fast, you should look at
# compaction_throughput_mb_per_sec first.
# This setting has no effect on LeveledCompactionStrategy.
# concurrent_compactors defaults to the number of cores.
# Uncomment to make compaction mono-threaded, the pre-0.8 default.
If you set it to 1 then only 1 compaction should run at a time, excluding validation.
How often do you run a cleanup compaction ? They are only necessary when you perform a token move.
On 1/02/2012, at 9:48 PM, Viktor Jevdokimov wrote:
When concurrent compactors are set to more then 1, itís rare when more than 1 compaction is running in parallel. Didnít checked the source code, but it looks like when next compaction task (any of minor, major, or cleanup) is for the same CF, it will not start in parallel and next tasks are not checked. Will it be possible to check all tasks, not only the next one, to find which of them can be started? This is actual especially when nightly cleanup is running, a lot of cleanup tasks are pending, regular minor compactions are waiting until all cleanup compactions are finished.
Disclaimer: The information contained in this message and attachments is intended solely for the attention and use of the named addressee and may be confidential. If you are not the intended recipient, you are reminded that the information remains the property of the sender. You must not use, disclose, distribute, copy, print or rely on this e-mail. If you have received this message in error, please contact the sender immediately and irrevocably delete this message and any copies.