main.CRITICAL: {
"error": {
"root_cause": [
{
"type": "illegal_argument_exception",
"reason": "Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [shape] in order to load field data by uninverting the inverted index. Note that this can use significant memory."
}
],
"type": "search_phase_execution_exception",
"reason": "all shards
Add a comment
|
1 Answer
For this you need to change into database set only is_filterable_in_search
to 0
This is old code
SELECT *
FROM catalog_eav_attribute cea
JOIN eav_attribute ea
ON ea.attribute_id = cea.attribute_id
AND backend_type IN ('text')
WHERE
cea.is_filterable = 1 OR cea.is_filterable_in_search = 1
Replace with below one code with your prefix like.
UPDATE **prefix_**catalog_eav_attribute cea
JOIN **prefix_**eav_attribute ea
ON ea.attribute_id = cea.attribute_id
AND backend_type in ('text')
SET
cea.is_filterable = 0, cea.is_filterable_in_search = 0
WHERE
cea.is_filterable = 1 OR cea.is_filterable_in_search = 1
Now after that just do reindex and cache
magento indexer:reindex
magento cache:clean
magento cache:flush
That's it..