Bren
Bren

Reputation: 2206

Elasticsearch can't update non dynamic settings

I am trying to create a test analyzer to experiment on analysis on Elastic Search. I have an index created called "mytest" which is available and searchable, but when I try to create a custom analyzer I get below error

{
"error": "ElasticsearchIllegalArgumentException[Can't update non dynamic settings[[index.analysis.analyzer.content.type, index.analysis.analyzer.content.tokenizer]] for open indices [[mytest]]]",
"status": 400
}

Now I am not sure on restrictions on updating settings but I could not find anything in documentation. I can create the analyze when creating the index, but update does not work.

Using the source below to create analyzer

PUT mytest/_settings
{
  "analysis" : {
    "analyzer":{
      "content":{
        "type":"custom",
        "tokenizer":"whitespace"
      }
    }
  }
}

Any ideas ?

Upvotes: 23

Views: 31870

Answers (2)

Noumenon
Noumenon

Reputation: 6412

If trying to set non-dynamic settings in Elasticsearch DSL for Python, make sure to pass them to index.settings() instead of the dynamic index.put_settings().

Upvotes: 0

Santhoshle
Santhoshle

Reputation: 643

You can't update the settings of index when the index is in open status. You need to close the index and update the settings and open the index.

Refer : error when trying to update the settings

Upvotes: 41

Related Questions