I have cluster cassandra-2.2.19-1. In logs on each node i see errors, like this:

Not enough space for compaction, estimated sstables = 1, expected write size = 113084823335
Not enough space for compaction, 540755.8MB estimated.  Reducing scope.
Not enough space for compaction, 389382.06MB estimated.  Reducing scope.
Not enough space for compaction, 248544.98MB estimated.  Reducing scope.

Why are there 3 different sizes? How to understand in the end how much space I need to add to the disk so that the compaction process is completed successfully, and how to understand how much disk space consumption will increase after this operation.

If these errors occur on 3 nodes, then 3 nodes need to add space?

Will adding 4 nodes in the cluster help, but with the same size as the rest?

  • Not sure if an upgrade is on your roadmap, but I've seen disk footprint decrease substantially when moving form Cassandra 2.2 to Cassandra 3.
    – Aaron
    Commented Apr 28, 2023 at 14:22

1 Answer 1


As a general rule, you need to have at least 30-50% free disk space to allow for compactions.

The reason you are getting different size estimates is that compaction candidates come up all the time -- it is part of the normal operation of Cassandra nodes. Different SSTables which become candidates for compaction have different disk space requirements so you will see a lot of variability reported in the logs.

If a node has around 500GB of data, we recommend the data disk to be around 750GB in size. If it takes you a while to provision disk space then it makes sense to have 1TB disks so you have breathing room.

As a friendly note, we always recommend posting the FULL error message + FULL stack trace instead of providing extracts like you did. This allows the contributors here to have full context of the problem you're facing instead of just the tiny picture you provide. Cheers!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.