Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Warning
titleUpgrading Multiple Versions

It is not always possible to upgrade multiple versions in one step. When this is not the case, if you attempt to skip a critical release you will see this message when trying to update the database schema:

Cannot automatically upgrade past version x.y.z. Please upgrade to that version first.

You must download and upgrade successfully to the specified version. This is the list of versions that block upgrading:

If you are currently runningYou must upgrade to this releaseBefore being able to upgrade to this release
v0.9.3 or earlierv0.9.4v1.0.0
v0.9.4v1.0.0Any later release

Backup Your Database

While upgrading is usually a fairly straightforward process, from time to time fairly significant database changes are made. Efforts are made to make these changes transparent, but as a precaution you should create a backup of your database prior to upgrading in case you need to revert the upgrade.

Download New Source

Checkout the source as described in Registry Installation - Source.

...

  1. (warning) When upgrading to or past v1.1.0, before continuing you may need to create symlinks to Plugins you were previously using. For more details, see Upgrading Registry to v1v2.10.0.

For versions prior to v1.0.0, depending on how you set things up previously you will likely need to:

...

(warning) Regardless of version, update your registry-current link to point to the new directory.

Clear Caches

Info

When running the console steps under v0.9.4, you may notice deprecation messages like

Deprecated (16384): Validation::notEmpty() is deprecated.

These messages may be safely ignored, and will be addressed in a future release (CO-1119).

Various caches are maintained to improve performance, but can cause problems during upgrades. Clear existing caches prior to continuing.

Note

In order to avoid problems with file ownership, you should run console commands as the web server user. Otherwise, make make sure the cache directory (wherever app/tmp points to) and all of its subdirectories and files are writeable by the web server. chown -R and chgrp -R may be in order after running console commands.

Version 1.0.6 and Later

Use the clearcache command.

No Format
$ cd app
$ su -c "./Console/clearcache" ${APACHE_USER}
Done clearing caches

Version 1.0.5 and Earlier

Info

When running the console steps under v0.9.4, you may notice deprecation messages like

Deprecated (16384): Validation::notEmpty() is deprecated.

These messages may be safely ignored, and will be addressed in a future release (CO-1119).

No Format
$ cd app
$ su -c "./Console/cake cache" ${APACHE_USER}
[...]
Done clearing cache

...

Note

Sometimes the cache clearing fails due to "internal error", which is usually Cake being confused by cached models not matching the new code. In this case you will need to manually clear the cache. Remove the cache files, but leave the directory structure in place. Something like

Code Block
# rm tmp/cache/models/*
# rm tmp/cache/persistent/*

...

Update Database Schema

Generally, updating the database schema is required when upgrading COmanage Registry. You may need to run this command as a user that has permission to write to your tmp directory.

...

Once you upgrade to this version

You should drop these tables (if present)

Registry 0.8.2

cm_co_changelog_provisioner_exports

Registry 1.1.0cm_organizations

Version Specific Database Updates

Run the appropriate steps for the versions you are upgrading past AND to. For example, if you are upgrading from v0.8.2 to v0.9, you must run the upgrade steps for both v0.8.3 and v0.9.

...