Updating data
See also: Updating ontology · Updating code · Backup and restore
Data is the most important part of a Dédalo project. In Dédalo, data has an abstraction layer and depends on the ontology definition. Sometimes the abstraction layer changes, or the global definitions need to add or change data structures; in those cases the data must be updated. The database schema may also need updating, or the indexes adjusting. All these changes happen in the same update-data process.
The "Update data" panel (update_data_version widget,
src/core/update/engine.ts) reports the real state: current_version_in_db
comes straight from the shared matrix_updates table, and the pending
updates list comes from this engine's own migration catalog
(src/core/update/catalog.ts) — currently empty for the 7.x line, so the
panel shows no pending migration today. When a release does ship a 7.x
migration, pressing "Update data" runs it for real against this server's own
database.
Updating data is the most delicate update process, and it is mandatory to back up your database before running it.
Not every code update implies a data update — the two processes are independent — but data depends on the ontology and code version, so some code updates do require a data update.
Updating tasks
-
Close access to the work system.
Before updating the data, it is mandatory to change the Dédalo status to maintenance. Follow this guide to change the Dédalo status and disable Dédalo access.
Inconsistencies
If the work system is in a normal state instead of maintenance status and users change data while the data-update process is running, data inconsistencies may arise.
-
Enter the maintenance panel.
Log in as root user and go to the Maintenance panel, located in:
System administration -> Maintenance
-
Make a backup of the database.
It is mandatory to create a backup before updating Dédalo data. Follow this guide to create a backup of the database.
Corruption
The update process will change the database; any problem with the database, server, memory or disk can corrupt the database during the process. A backup is mandatory to prevent data loss.
-
Update ontology and code.
Before updating data, update the ontology and code to their latest versions:
Follow this guide to update the ontology. Follow this guide to update the code.
-
Locate the "Update data" control panel.
If a migration is pending, the update data control panel shows the task that is required:

Read the list, and locate the last process:

When ready, press the "Update data" button, wait, and the result is shown when the process finishes.

-
Open access to the work system.
Revert the maintenance status to
false. -
Log out and re-login with a normal user.
Data updates could take time, especially in large installations.