This guide will help you upgrade an existing MySource Matrix version 3.12.1 installation to version 3.12.2.
This upgrade requires you to have access to:
This guide assumes that your MySource Matrix installation is located at /home/websites/mysource_matrix. Please change any commands to the appropriate location if your installation is located elsewhere.
If your system contains the commercial or premium modules, please contact Squiz for updated versions of the modules before proceeding with the upgrade.
The modules must be upgraded at the same time as the core system.
Before starting any upgrade, always backup your MySource Matrix installation. See the MySource Matrix backup management guide for information on how to backup your MySource Matrix system.
The first thing you need to do is update the MySource Matrix source code. You can find out how to download the latest stable version of MySource Matrix on the installation page.
Once you have downloaded the source code, you need replace the existing code with the newer version. This will not reset any configuration options or remove any content from your system.
These steps assume MySource Matrix is installed at /home/websites/mysource_matrix and that a tar.gz archive with the new source code exists within /home/websites$ cd /home/websites $ mv mysource_matrix mysource_matrix_3-12-1 $ tar -xzvf new_source.tar.gz $ cd mysource_matrix $ cp -r /home/websites/mysource_matrix_3-12-1/data .
First, the system's installation scripts should be run to ensure the asset types and language translations are up to date.
$ php install/step_02.php /home/websites/mysource_matrix $ php install/step_03.php /home/websites/mysource_matrix $ php install/compile_locale.php /home/websites/mysource_matrix
There were issues found with the performance of rollback triggers, which were traced to indexes not properly covering the key columns. These queries should improve the performance of rollback systems. If your system does not run rollback, then these queries are not required to be run.
These queries should be run in the appropriate command-line interface (psql for PostgreSQL systems, sqlplus for Oracle systems).
CREATE INDEX sq_rb_ast_mdata_dflt_val_asset ON sq_rb_ast_mdata_dflt_val (assetid); CREATE INDEX sq_rb_ast_wflow_assetid ON sq_rb_ast_wflow (assetid); CREATE INDEX sq_rb_ast_wflow_schemaid ON sq_rb_ast_wflow (schemaid); CREATE INDEX sq_rb_ast_role_roleid ON sq_rb_ast_role (roleid); CREATE INDEX sq_rb_ast_role_assetid ON sq_rb_ast_role (assetid); CREATE INDEX sq_rb_ast_role_userid ON sq_rb_ast_role (userid); CREATE INDEX sq_rb_trig_id ON sq_rb_trig (id); CREATE INDEX sq_rb_cal_date_val_assetid ON sq_rb_cal_date_val (assetid); CREATE INDEX sq_rb_ast_attr_uniq_val_owning ON sq_rb_ast_attr_uniq_val (owning_attrid); CREATE INDEX sq_rb_ast_attr_uniq_val_custom ON sq_rb_ast_attr_uniq_val (custom_val); CREATE INDEX sq_rb_ast_url_urlid ON sq_rb_ast_url (urlid); CREATE INDEX sq_rb_ast_url_url ON sq_rb_ast_url (url); CREATE INDEX sq_rb_ast_path_path ON sq_rb_ast_path (path); CREATE INDEX sq_rb_ast_lookup_url ON sq_rb_ast_lookup (url); CREATE INDEX sq_rb_ast_lookup_value_name ON sq_rb_ast_lookup_value (name); CREATE INDEX sq_rb_ast_lookup_value_url ON sq_rb_ast_lookup_value (url); CREATE INDEX sq_rb_ast_lookup_remap_url ON sq_rb_ast_lookup_remap (url); CREATE INDEX sq_rb_ast_lookup_perm_permissi ON sq_rb_ast_perm (permission); CREATE INDEX sq_rb_ast_edit_access_userid ON sq_rb_ast_edit_access (userid); CREATE INDEX sq_rb_ast_edit_access_type_cod ON sq_rb_ast_edit_access (type_code); CREATE INDEX sq_rb_ast_edit_access_screen ON sq_rb_ast_edit_access (screen); CREATE INDEX sq_rb_ast_edit_access_section ON sq_rb_ast_edit_access (section); CREATE INDEX sq_rb_ast_edit_mdata_assetid ON sq_rb_ast_mdata (assetid); CREATE INDEX sq_rb_ast_edit_mdata_schemaid ON sq_rb_ast_mdata (schemaid); CREATE INDEX sq_rb_ast_assetid ON sq_rb_ast (assetid); CREATE INDEX sq_rb_ast_lnk_value ON sq_rb_ast_lnk (value); CREATE INDEX sq_rb_shdw_ast_lnk_linkid ON sq_rb_shdw_ast_lnk (linkid); CREATE INDEX sq_rb_ast_lnk_tree_treeid ON sq_rb_ast_lnk_tree (treeid); CREATE INDEX sq_rb_ast_lnk_linkid ON sq_rb_ast_lnk (linkid); CREATE INDEX sq_rb_ast_lnk_value ON sq_rb_ast_lnk (value); CREATE INDEX sq_rb_ast_mdata_val_assetid ON sq_rb_ast_mdata_val (assetid); CREATE INDEX sq_rb_ast_mdata_val_fieldid ON sq_rb_ast_mdata_val (fieldid);
If your system was affected by bug #2092 ("%metadata_field_XXX% keyword doesn't work when set to "Never" display"), you should regenerate your metadata schemas manually, from the Details screen of the schema asset, to restore correct metadata values. Please note that this may take a long time on large systems.
If this bug did not affect your system, you are advised to skip this step.
Your upgrade to MySource Matrix version 3.12.2 should now be complete.