How to – Fix the Vicidial error: Code Expects Different Schema
This is a pretty easy fix, “Code Expects Different Schema” occurs when you update your svn version but forget to update the db schema through mysql. The instructions are below.
After database dump restoration taken from older Vicibox to the latest Vicibox 9.0.3 I got the following error in
Admin -> System Settings section:
WARNING: Code expects different schema: 1585
It’s not possible to change or save any setting. The reason is obvious: Vicibox 9 has new and altered tables and functions so you will have to add them to the restored database before you can use system.
First, confirm your current database schema version. Log in to MariaDB command prompt and perform the following query:
|MariaDB> SELECT db_schema_version FROM system_settings;
Next, navigate to
/usr/src/astguiclient/trunk/extras folder and locate
upgrade_X.XX.sql files. Open the newest file and if it contains this schema version – this is the one that needs to be executed. In case you found your DB schema version not in the newest .sql , execute it first and then all newer files.
Please make note that some tables and functions may already exist in your database that’s why add
-f key to the
|# mysql -u root -f asterisk < /usr/src/astguiclient/trunk/extras/upgrade_2.14.sql
Confirm your current database schema version again and make sure it’s been upgraded.
Now you should be able to use the system and change/set settings.
I hope this helps