This article is a legacy article. It applies to previous versions of the Liferay product. While the article is no longer maintained, the information may still be applicable.
When upgrading to the latest Liferay Portal, there are many things to take into account. This guide is designed to assist in the upgrading process. Please read and ensure your environment is ready prior to performing the upgrade.
NOTE: In order to save you some time, we have compiled a high-level summary of all items listed in the upgrade progress for this current upgrade. This includes details of what is actually being changed and occurring through the upgrade and should help you avoid the trouble of searching for answers in the source code yourself. Please also see: Database Upgrade Summary.
Each component needs to be addressed in order to complete the upgrade process. The following are listed in order of what should be completed first.
1. Backup—Ensure each component that is mentioned in the following instructions is backed up before proceeding.
2. Liferay Portal—
- Download the latest EE Portal WAR, EE Portal Dependencies, and EE Plugins.
- Remove the legacy EE Portal WAR, EE Portal Dependencies, and EE Plugins.
- Deploy the latest EE Portal WAR, EE Portal Dependencies, and EE Plugins.
3. Fix Packs—Install all the fix packs using the Patching Tool to eliminate known issues. The upgrade fix packs enable the ‘seamless’ upgrade feature for the portal, minimizing configuration options, as well as including a host of features that speed up the upgrade process. Liferay has also released ‘hotfix-1285-6012’ to reduce the amount of queries involving permissions during the upgrade.
- Database—Place the database (JDBC) settings pointing to a source containing the data from the legacy environment.
Permissions—Include the permissions algorithm setting used in the legacy environment:
This property sets the algorithm used throughout the portal to check permissions for a user. With the property set, it ensures permissions will be kept during the upgrade process. Users are encouraged to eventually migrate permissions to algorithm 6 as future versions of Liferay will require it. For users on Liferay 5.2 SP4 and later, the permission algorithm migration can occur before the upgrade, please follow the instructions in the user guide.
- Document Library / Image Gallery—Ensure the portal is using the same Document Library and Image Gallery hooks, as well as pointing to the location where files were previously being stored (image.hook.impl, image.hook.file.system.root.dir, dl.hook.impl, dl.hook.file.system.root.dir).
- Legacy Properties—If performing a major upgrade, please also review the settings from portal-legacy.x.x.properties. Copying pertinent properties in order to ensure backwards compatibility. These files can be found under /WEB-INF/classes
5. Checkpoint—Pause and verify the above components have been upgraded successfully.
6. License—A new license is necessary to upgrade to version 6.0EE. Please submit a license request via a Help Center ticket, or through the Activation Key Request form.
Be sure to include the following information:
- MAC Address
- IP Address
7. Customizations—Download and use the latest released Plugins SDK. Custom code (Customizations, portlets, hooks, themes, layout templates, etc) will need to be rebuilt using the 6.0 EE SP2 Plugins SDK. Deploy customizations after all errors and API changes have been reconciled.
Note: 6.0EE+ does not support the old EXT environment; see Extension Environment Migration Tips for how to migrate to the new ext-plugin.
- Attempt upgrades when there are no issues with the legacy environment. Issues within the legacy environment may lead to further issues if attempting to upgrade. Resolve all issues first.
- If an upgrade fails, do not attempt to upgrade again on the same database. Instead, users should roll the database back to a state before the upgrade, resolve any upgrade issues and then attempt another upgrade with the database.
- Test the upgrade process within a separate test environment first.
- Do not make changes to production without testing. Separate (clone) environments can be created in which the upgrade is performed. These environments can then be used to migrate to production. Using this technique, downtime can be minimized in addition to reducing risk to the live production environment.
Additional Upgrade Notes
5.1 EE SP5 (5.1.8) to 6.0 EE SP2
For users on Liferay 5.1 EE SP5 (5.1.8), a two-step upgrade is suggested in order to migrate permission algorithms (to 5 or higher) prior to moving to Liferay 6.0 EE SP2. Please upgrade first to Liferay 5.2.8, performing the necessary upgrade steps before proceeding with the move to Liferay 6.0 EE SP2.
5.2.3 CE to 6.0 EE SP2
For users on Liferay 5.2.3 CE and a database with sample data (that was bundled with the portal), users will need to disable an upgrade process for the SevenCogs hook prior to moving to Liferay 6.0 EE SP2.
- Shutdown the application server for 5.2.3.
/webapps/sevencogs-hook/WEB-INF/classes/portal.propertiesdelete this line:
- Start the 5.2.3 application server and verify that no issues occur.
- Shutdown the 5.2.3 application server.
- Continue with the upgrade steps to Liferay 6.0 EE SP2.
6.0.5 CE to 6.0 EE SP2
For users on Liferay 6.0 CE prior to 6.0.5 CE, please upgrade to 6.0.5 CE prior to performing the upgrade to Liferay 6.0 EE SP2.