Search code examples
mdriven

Error in MDriven Server log "Client has different model than Server. Save is not allowed"


I get this error from time to time in the MDrivenServer log. What does it mean and how do I fix it?


Solution

  • When you upload a model to the MDrivenServer it is associated a checksum that is based on the contents of the model. The model-version uploaded is used to evolve and change your database so that it match the new model.

    If you have client-applications running while doing this they will be based on the prior version of the model.

    If someone with a different model tries to write to your database it may cause data inconsistency in the database (suppose you added an attribute in the new model that has a mandatory value - the old version does not know and cannot possibly comply - resulting in a illegal state).

    MDrivenServer stops updates from models with wrong checksum in order to prevent data inconsistency - it then writes "Client has a different model than the server. Save is not allowed" in the log.