Is it allowed to do a forced flush or flush to the sstable while doing a snapshot?
Snapshots are just links, there is no implication if you do any action while creating a snapshot. The only thing that may create a problem is if you have something reading the snapshots while deleting them at the same time. This is not an issue in Cassandra, but I've seen customers implement cron jobs that clear snapshots, while at the same time having something trying to read those snapshots (like reaper repair will try and validate using snapshots), and that can create an FS disk issue which could cause a race and cause the disk failure policy to invoke.
It isn't necessary to manually flush memtables to disk (with
Creating a snapshot (with
nodetool snapshot) automatically triggers a memtable flush before the snapshot is created to make sure that all the data is included.
For details on how it works, see Taking a snapshot in Cassandra. Cheers!
8 People are following this question.