Affects Version/s: 7.0.0 DXP FP89, 7.0.X, 7.1.10 DXP FP16, 7.1.X, 7.2.10 DXP FP4, 7.2.X, 7.3.X, 7.3.0 CE GA1, Master
Fix Version/s: None
Component/s: Portal Configuration
In some cases, running verify:executeAll does not flag the verify process as failed when bad data is encountered. Running verify:executeAll currently logs an error about the bad data but it also needs to flag the verify process as failed. The fact that the verify process is not flagged as failed means that running verify:checkAll after running verify:executeAll produces a report with incorrect information. A succeeded messages appears when a failed message should appear.
The issue is not that there is bad data or even how the bad data got there. The verify:checkAll command should not have returned succeeded messages for the services that were affected by the bad data. Running the verify:checkAll makes it seem like everything is fine, when that is not the case. This issue also occurs during the upgrade to 7.2, when the verify processes are run.
- Start a clean bundle of Liferay DXP 7.2 connected to a MySQL 5.7 database with the following property in the portal-ext.properties file.
- Go to Content -> Web Content and create a structure
- Go to the DDMStructure table in the database and change the IndexType field in the Definition for the structure you created to "non-searchable"
- In a new terminal, start telnet localhost 11311
- Run verify:executeAll and observe the error that occurs due to the bad data.
- Run verify:checkAll
Expected Results: verify:checkAll should report com.liferay.dynamic.data.mapping.service verify process failed.
Actual Results: verify:checkAll reports com.liferay.dynamic.data.mapping.service verify process succeeded.
Note: To run just the ddm service verification process, use verify: execute com.liferay.dynamic.data.mapping.service