Migration coordinator is responsible for tracking schema versions on various nodes and, if needed, synchronize the
schema. It performs periodic checks and if there is a schema version mismatch between the current node and the other
node, it pulls the schema and applies the changes locally through the callback.
In particular the Migration Coordinator keeps track of all schema versions reported from each node in the cluster.
As long as a certain version is advertised by some node, it is being tracked. As long as a version is tracked,
the migration coordinator tries to fetch it by its periodic job.
It works in close cooperation with
DefaultSchemaUpdateHandler
which is responsible for maintaining local
schema metadata stored in
SchemaKeyspace
.