Liferay Upgrade Planner
Plan a Liferay upgrade from 6.2 or 7.x to DXP 2025.Q1 or 2026.Q1 LTS: breaking changes (incl. Jakarta EE), JDK, Tomcat and search requirements, and the database upgrade commands.
Choose your upgrade path
Liferay 7.3 → Liferay 7.4
(5 steps)7.4 consolidated many apps and introduced Objects and an expanded headless API. Recompile all modules against the 7.4 target platform and review any custom entities that overlap with Objects.
More legacy properties were removed or moved to OSGi configuration in 7.4. Diff your portal-ext.properties against the 7.4 defaults and migrate anything that no longer applies.
Portal Properties DiffAPIs deprecated across the 7.x line are removed in 7.4. Rebuild and fix any remaining references before deploying.
Liferay 7.4 runs on JDK 8 and JDK 11. Standardize your build and runtime on JDK 11 now, because the quarterly releases remove JDK 8 and move on to JDK 17 and 21.
Liferay 7.4 supports Elasticsearch 7.14–7.17, and Elasticsearch 8.8+ on later updates (DXP U81+, CE GA102+). Elasticsearch 7 is end of life, so moving to 8.x now saves a step later.
Database upgrade: Liferay 7.3 → Liferay 7.4
(8 steps)You do not install each version in between. The upgrade tool of the target release runs every upgrade step from your current schema in one go. The sections above list what changed along the way, so your code, themes and environment are ready for the target.
Take a full backup of the database, the Document Library store and [Liferay Home]/data. Run the upgrade on a copy of production first and time it. If an attempt fails, restore the backup instead of retrying on the same database.
Removing unused instances, sites, pages and old content versions can cut upgrade time considerably. Tune the database for a write-heavy batch and enable batch inserts in the upgrade tool.
Publications that are still open become read-only after the upgrade.
With the old server stopped and the new bundle configured against the database copy, run the upgrade client from [Liferay Home]/tools/portal-tools-db-upgrade-client. Before 7.4 U82/GA82 the script was called db_upgrade.sh. The default heap is 4 GB; give it more for databases over 10 GB, then read the upgrade report for errors.
cd [Liferay Home]/tools/portal-tools-db-upgrade-client ./db_upgrade_client.sh -j "-Xmx8192m"
If the report shows modules that did not finish, check and run their upgrade processes from Gogo Shell before allowing traffic.
upgrade:check upgrade:executeAll
Auto upgrade on startup is handy for local and test copies, but if you used it, remove upgrade.database.auto.run or set it to false before going live.
After the upgrade, reindex all search indexes from Control Panel → Search so content is searchable again.
How to read this plan: the numbered sections list what changed in each release between your version and the target, so you can update code, themes and the environment in one go. The database is upgraded once at the end, straight to the target. Requirements were checked against Liferay's compatibility matrices and releases.json on 2026-10-12; confirm them for your exact patch level.
Upgrading Liferay 7.3 to Liferay 7.4
This plan covers the changes in 1 release between Liferay 7.3 and Liferay 7.4, then one database upgrade, 13 steps in total. You don't install the versions in between: update your code, themes and environment for every change listed, then run the Liferay 7.4 upgrade tool once against a backup of your database.
Releases in this path
- Liferay 7.3 → Liferay 7.4 — 5 steps
Before you start
- Back up the database and the Document Library, and test the upgrade on a copy of production first.
- Patch your current version to its latest fix pack before beginning.
- Confirm JDK, app server and search engine requirements for your exact Liferay 7.4 patch level. This plan was checked against Liferay's compatibility matrices on 2026-10-12.