Solr Limitations¶
Important
Liferay’s Solr support is deprecated. Please plan to migrate to Elasticsearch.
Search Results Quality¶
Elasticsearch-specific APIs and mappings are being leveraged in Liferay’s search functionality. Because some of these features are not included in Solr, a lower quality of search results is expected when using Solr as Liferay’s search engine.
For example, the language aware sorting behavior in Liferay relies on the collation rules present only because of the ICU Analysis Plugin from Elasticsearch. When searching in Solr some non-optimal sorting behavior is expected, especially when field values contain diacritical marks.
End-User Feature Limitations¶
Liferay’s Solr integration has limitations. Elasticsearch is required to use the following features:
All Liferay Enterprise Search applications, including
Cross-Cluster Replication
Search Experiences
Learning to Rank
Monitoring
Developer Feature Limitations¶
The following APIs are not currently supported by Liferay’s Solr connector.
From Portal Core (Module:
portal-kernel
, Artifact:com.liferay.portal.kernel
):com.liferay.portal.kernel.search.generic.NestedQuery
com.liferay.portal.kernel.search.filter
:ComplexQueryPart
GeoBoundingBoxFilter
GeoDistanceFilter
GeoDistanceRangeFilter
GeoPolygonFilter
From the Portal Search API (Module:
portal-search-api
, Artifact:com.liferay.portal.search.api
):com.liferay.portal.search.filter
:ComplexQueryPart
TermsSetFilter
com.liferay.portal.search.geolocation.*
com.liferay.portal.search.highlight.*
com.liferay.portal.search.query.function.*
com.liferay.portal.search.query.*
:com.liferay.portal.search.script.*
com.liferay.portal.search.significance.*
com.liferay.portal.search.sort.*
: onlySort
,FieldSort
, andScoreSort
are supported
Portal Search Engine Adapter API (Module:
portal-search-engine-adapter-api
, Artifact:com.liferay.portal.search.engine.adapter.api
)com.liferay.portal.search.engine.adapter.cluster.*
com.liferay.portal.search.engine.adapter.document.UpdateByQueryDocumentRequest
com.liferay.portal.search.engine.adapter.index.*
: onlyRefreshIndexRequest
is supportedcom.liferay.portal.search.engine.adapter.search.*
:MultisearchSearchRequest
SuggestSearchRequest
com.liferay.portal.search.engine.adapter.snapshot.*
Note
Liferay Commerce requires the TermsSetFilter
implementation which is only available in the Elasticsearch connector.