Consider MySQL CB schema changes to make it compatible with NDBCLUSTER
One of the Kea users attempted to use NDBCLUSTER instead of InnoDB engine with Kea 1.5.0. Some CB specific tables added in 1.5.0 use
UPDATE CASCADE action. Specifically, the tables holding address/prefix pools include
UPDATE action referencing the subnet_id primary key. This works fine for the InnoDB engine, but not for the NDB cluster.
The NDB cluster docs says this:
ON UPDATE CASCADE is not supported when the reference is to the parent table's primary key.
And further on it explains:
This is because an update of a primary key is implemented as a delete of the old row (containing the old primary key) plus an insert of the new row (with a new primary key). This is not visible to the NDB kernel, which views these two rows as being the same, and thus has no way of knowing that this update should be cascaded.
Even though, we use InnoDB by default, we may consider removing the
UPDATE CASCADE actions on primary keys (which would require us to modify the code that updates subnet_id for a given prefix), to support users which want to play with cluster engines.