The Upgrade Process
- Last UpdatedDec 02, 2021
- 2 minute read
The upgrade process will be undertaken by System Administrators responsible for the project at all locations. It is feasible that system administration may be taken at a remote location for some locations. When upgrading multiple projects then many System Administrators will need to co-ordinate. The upgrade process may become complicated if running through different time zones. The upgrade process will upgrade one project at a time. Consideration to the order of projects to be upgraded will need to be undertaken by the user.
The projects will need to be locked for the duration of the upgrade, with all Users out of the system.
The following upgrade steps must be performed by an administrator:
-
Make sure all users have exited from project.
-
Lock project at all locations (upgrade will check for this).
-
Disable Automatic update events.
-
Expunge all users in the system at the local location.
-
Flush data from Working extracts - these will not be considered.
-
Check for No Transient Databases.
-
Data Integrity Check (DICE) project.
-
If DICE reveals issues, address them, then re-run DICE.
Administrator may want to unlock project while DICE issues are being addressed, but will need to exclude all users and Lock project again before final DICE.]
-
[After clean DICE].
-
Back-up project at all locations
The following upgrade steps will performed by the upgrade:
-
At each location, run Update
-
Deep Refresh with Propagation on all Databases (DBs)
-
Temporarily relocate all non-Foreign DBs, to make appear Primary at Hub.
-
Loop over all non-Foreign DBs in project at Hub and Upgrade (i.e. run each framework part-upgrade on that DB)
-
Do not perform SAVEWORK during this process.
-
Update at all locations.
-
Refresh.
-
Post-process at all locations.
-
Optionally Merge Sessions.
-
Optionally Reconfigure for Unicode.
-
Update at all locations.
-
Relocate DBs back to original locations.
-
DICE check project.
-
Perform non-framework upgrades if applicable
The mechanism by which the Administrator will tell the upgrade whether to Merge Sessions, and whether to Reconfigure for Unicode, are design details which will be described in the design documentation.
Locking the Project
The project as a whole cannot be locked, only individual locations; however, it is possible to lock all online locations from the HUB through Global. To do this run the following command from the HUB:
LOCK AT <location>
The HUB can be locked without the need for a daemon command by just typing:
LOCK
It is possible to confirm whether locations are locked by evaluating the return result from:
QUERY LOCK AT <location>