← All posts

Schema Migration Compatibility

tech

At server side, the deployment and schema migration might conflict to each other as:

  • Application might have its components scaled. However, schema migration should be done only once (it should be idempotent anyway, but the best practice is to avoid repetitive executions).
  • Rolling update practice is enforced to ensure HA and reduce downtime.

At client side, the client has control over its device and application. It is at the mercy of the user, who may not install and update the application for some time. Therefore, it is necessary to ensure backward and forward compatibility when performing schema migration.