ScyllaDB, why is disk space not released when data are modified, compaction and how can I free up disk space?

Installation details
#ScyllaDB version: 4.6.3
#Cluster size: 3
os Ubuntu 20.04:

So we had this table, let’s say it’s called mykeyspace.data_by_min , that has the default compaction type (size tiered).
It contained a particular field that was few ko for each entry, so it took a lot of spaces quickly.
Dev fixed that and changed they soft for said field content to something smaller, they also applied the change it to all existing entries (so no deleted entries and no tombstones)
But after 10 days, still no - or little- space have been released, while the SSTables for this table seems to compact on a regular basis.

I know that the compaction type that is in use is probably not appropriate since it’s clearly a time windows table, but beside that, what could explain this issue ?

I ran a compaction on said keyspace and it freed the space. It seems that scylla was only applying minor compaction, not major ones.

How to see if a major compaction occured (tell me if i miss something or if it’s wrong)
nodetool compactionhistory | grep mykeyspace | grep data_by_min –> you must see large difference in value for the last 2 columns. if the difference is small that’s a minor compaction
nodetool tablestats mykeyspace.data_by_min –>
before the compaction SSTables in each level: [18/4]
after the compaction: SSTables in each level: [4]

1 Like