I am trying to setup elasticsearch 2.4.5 on a internal server and trying to use this for my EE 2.1.6 setup (magento installed in my local version). Following are the ES details.
{
"name" : "The Grip",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "TtY4Vl4LRJ22V5wF1fhkOQ",
"version" : {
"number" : "2.4.5",
"build_hash" : "c849dd13904f53e63e88efc33b2ceeda0b6a1276",
"build_timestamp" : "2017-04-24T16:18:17Z",
"build_snapshot" : false,
"lucene_version" : "5.5.4"
},
"tagline" : "You Know, for Search"
}
When I try reindexing I get the following error.
Catalog Search indexer process unknown error:
mapper_parsing_exception: Root mapping definition has unsupported parameters: [
from: 0
][
size: 10000
][
stored_fields: [
_id,
_score
]
][
query: {
bool={
should=[
{
match={
sku=shirt
}
},
{
match={
_all=shirt
}
},
{
match={
color=shirt
}
},
{
match={
description=shirt
}
},
{
match={
manufacturer=shirt
}
},
{
match={
name=shirt
}
},
{
match={
short_description=shirt
}
},
{
match={
status_value=shirt
}
},
{
match={
tax_class_id_value=shirt
}
}
],
minimum_should_match=1
}
}
][
aggregations: {
price_bucket={
extended_stats={
field=price_0_1
}
},
category_bucket={
terms={
field=category_ids
}
}
}
]
When I do it again then I get the following error.
Catalog Search indexer process unknown error:
illegal_argument_exception: Alias action [match] not supported
When I try using search on the store front it gives me an exception.
Exception #0 (Elasticsearch\Common\Exceptions\Missing404Exception):
{"error":{"root_cause":[{"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"magento2_product_1","index":"magento2_product_1"}],"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"magento2_product_1","index":"magento2_product_1"},"status":404}
The above exception makes sense as Magento is looking for index magento2_product_1
and in ES the index created is magento2_product_1_v1
.
Does anyone know what the error is really about? Why Magento is not able to create the index fully.
Best Answer
@Rajith: "magento2_product_1" is the alias of "magento2_product_1_v1" the index that is created on ES is correct. Magento should be able to find the correct index through the alias "magento2_product_1".
It is working without any issues on Magento Devbox which uses Elastic Search 2.4.5 and I am running Magento EE 2.1.6.
There should be something wrong in your Elastic Search configuration or the permissions.