Full ERROR Message Example
ERROR [InternalResponseStage:2] 2018-05-31 00:02:30,559 MigrationTask.java:95 - Configuration exception merging remote schema org.apache.cassandra.exceptions.ConfigurationException: Column family ID mismatch (found cce68250-63d6-11e8-b887-09f7d93c2253; expected 41679dd0-2804-11e8-a8d4-cd6631f48e81)
What does this ERROR message mean?
This error means the schema version of one node is trying to stream data from an existing node with a different schema version. The error states that the mismatched schemas are preventing the data streaming to be completed.
Why does this ERROR occur?
This error occurs when the schema of nodes get out of sync. This can happen when one node is down in a cluster for a period of time and multiple schema changes have been pushed to the cluster during this period.
The node that was offline will now have an older schema that doesn't match the cluster's current schema. When a customer is using queries with IF DOES NOT EXIST to create tables, the schema on nodes can become out of sync if the repair service has problems keeping up with schema changes backlogged. This can also occur when this type of query is using a consistency level of LOCAL_ONE which then relies on the repair service or read repairs to keep the schema versions on the nodes synchronized.
How do you fix this ERROR?
The good news is the schema disagreement is fixed by performing a rolling restart on the cluster. After all the nodes have been restarted, all the nodes should now share the same schema version. You can verify that the schema now matches by using the nodetool describecluster command to see the schema version number and the nodes using it.