The code for calculating cdc_total_space_in_mb in DatabaseDescriptor.java does not reflect the latest architecture introduced by
In short, cdc_total_space_in_mb should be equal or greater than commitlog_total_space_in_mb; otherwise, the writes will fail when on-disk commit logs size reaches the value of cdc_total_space_in_mb. For example, If cdc_total_space_in_mb is 4096 and commitlog_total_space_in_mb is 8192, when we enabled the cdc_enabled flag (even if we didn't enable cdc=true on any table), when total size of commit logs reaches 4096 MB, there is the same of amount of hard links in cdc_raw directory, that is, 4096 MB of cdc logs. Then, if a table has cdc=true, the writes will fail in that table because the CommitLogSegmentManagerCDC will be unable to process new CDC segments. (See allocate and processNewSegment in CommitLogSegmentManagerCDC class)
I will attach patches later.