Liferay DXP 7.2 Service Pack 1 (SP1) includes changes that further improve data consistency within the Liferay platform.
- Additional Liferay services now have Multiversion Concurrency Control (MVCC) enabled
- Changes to support MVCC will not break compatibility with existing code
MVCC is a concurrency control method that helps provide better data consistency.
Liferay’s MVCC strategy utilizes Hibernate's optimistic locking system to preserve data integrity during concurrent data modifications.
To implement MVCC, an additional column to track versioning was added to some tables in the database. The impacted tables are listed here.
Liferay’s Service Builder allows for services to easily implement MVCC.
The MVCC changes that are being implemented fit within our Blue-Green Deployment strategy. Therefore, applying this update should require zero downtime.
With this update, additional Liferay services now will have MVCC enabled.
In order to support MVCC, new columns were added to some tables in the database. Again, these changes are additive and will not break compatibility with existing code.
Note: MVCC may reveal concurrency bugs in customizations that are using these additional Liferay services. For a list of impacted services and sample code which may guide you toward a resolution please see the following article: A StaleObjectStateException is Thrown When Using a Liferay Service
To apply these improvements to your Liferay instance, please refer to our guide on running the Database Upgrade Tool for your 7.2 SP1 update.
Note: After installing this service pack, the Database Upgrade Tool will no longer be needed to apply updates that fit within the Blue-Green deployment strategy.