Liferay stores all the information in a relational SQL database, but most of
the entities (Web Content, Documents, Users, Blogs Entries, etc.) are also
indexed on the Elasticsearch server.
This Elasticsearch server is used by several Liferay functionalities, for
example:
Every time some information is stored or deleted in the database, Liferay
executes its indexers classes to replicate the new information or deletion to
the Elasticsearch server.
If your Elasticsearch server is down or not working properly for some time,
the updates from Liferay are not stored. So you can end having inconsistent
data in the Elasticsearch server.
This inconsistent data can cause Liferay to malfunction.
To resolve all these inconsistencies, you can use Index Checker.
You can download it from:
The Index Checker application allows Liferay administrators to check the
index status and solve the detected problems.
It scans both database and Elasticsearch index, displaying:
To obtain the necessary data, this application compares primary keys, modified
dates, status, version, and other related data of both database and index.
After executing the index check, the wrong data is displayed:
Before executing the analysis, you can apply several filters:
This will help you in case your system has a lot of data.
For example, if you have a lot of web contents in your system: it is possible
to reindex web contents of only one site
On the configuration page you will be able to:
In the output, you can also display the correctly indexed information just in
case you want to double-check it.
You can download it from:
To install it, copy it to Liferay deploy folder.
Index Checker 1.0.1 works in Liferay DXP/Portal from 7.1 to 7.4.
Index Checker 0.9 works in Liferay DXP/Portal from 6.2 to 7.0.