Was this page helpful?
Caution
You're viewing documentation for a previous version of ScyllaDB Enterprise. Switch to the latest stable version.
If you used CDC in Scylla 4.2 or earlier by enabling the experimental feature and you upgrade to 4.3, you must perform additional steps for CDC to work properly.
First, if you enabled CDC on any table (using with cdc = { ... }
), you should stop all writes to this table. Then disable CDC before the upgrade:
alter table ks.t with cdc = {'enabled': false};
Caution
This will delete the CDC log table associated with this table - in this example, ks.t_scylla_cdc_log
.
This should work even if you already upgraded, but preferably disable CDC on all tables before the upgrade.
After disabling CDC and finishing the upgrade you can safely reenable it.
The next step is running nodetool checkAndRepairCdcStreams
. Up to this point, Scylla may have periodically reported the following errors in its logs:
cdc - Could not retrieve CDC streams with timestamp {...} upon gossip event. Reason: "std::runtime_error (Could not find CDC generation with timestamp ... in distributed system tables (current time: ...), even though some node gossiped about it.)". Action: not retrying.
After running the nodetool
command the errors should not appear anymore. If they do, please open an issue.
Was this page helpful?