Actions

Testing Area/TestingUpgrade

From Mahara Wiki

< Testing Area
Revision as of 13:09, 12 November 2020 by Robertl (talk | contribs) (Created page with "===Prerequisites=== Check the patch for changes to the following files * Any file named upgrade.php * Any file named install.xml If it has any of these then read on... ===Be...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Prerequisites

Check the patch for changes to the following files

  • Any file named upgrade.php
  • Any file named install.xml

If it has any of these then read on...

Be aware of

If the upgrade.php or install.xml file does not exist in the htdocs/lib/db/ path then the upgrade may require doing a manual upgrade via the Admin -> Overview page

Testing steps that should be done

  1. Upgrading the site from previous stable branch base, eg if testing a patch for 20.10 then have site at 20.04.0 and upgrade from there. For master then latest stable branch, eg 20.10.0
  • Do for postgres first and if that passes
  • Do for Mysql
  1. Installing
  • Do for Postgres
  • Do for Mysql

If the upgrade is for adjusting data to fix a problem then test with a database with lots of data as some issues might not be spotted in a small database.

Things to look out for

  1. If the upgrade adds / alters tables
  • Make sure the table structure after upgrade is the same as after install. Often there can be mistakes where a field will be 'not null' after upgrade but allow null after install.
  1. If the upgrade alters database content
  • If the upgrade is dealing with altering table data because we need to fix up bad data then make sure that expected data exists after upgrade, eg if we have 50 rows in block_instance table and we adjust the configdata to add a parameter we would expect to still have 50 rows at the end.
  • If we are moving data from one table to another then we'd expect it to be gone from the old table and exist in the new table.
  • Make sure the database has data in it that will be adjusted by the upgrade