Do I Need to close and open index when synonym.txt changed?

As far as i know, when synonym.txt changed, index have to close and open.

but now, when i changed to synonym.txt and didn't use close and open API for index and new synonym is applied.

my elasicsearch engine is running on the kubernetes cluster and sysnonym.txt path mounted my local repository.
is it just feature of kubernetes??? or Elasticsearch7??? :grinning:

You are correct, currently the synonyms filter is instantiated when opening an index with whatever content the synonyms file has at that point in time. Later changes to the file are not reflected as long as the index stays open. New indices created later will pick up changes made at the time they were opened.
There is some current work going on that tries to change this so at least synonym filters that are used in search_analyzers are updateable.

1 Like

@cbuescher thanks for your help.

So, synonym dictionary changes are automatically update?
that mean, there is no need to Close and Open indicies for update synonym dictionary?

Thats the plan, but this feature isn't release yet. Also, you will have to tell ES to reload the index analyzers (via an API call) because we are not going to pull to detect file changes.

1 Like

@cbuescher Thank you so much. I totally understood your mention. That feature not released yet. But on my ES cluster, when i update my synonym.txt file, then, new synonyms are automatically applied. It's so weird! :joy:
I used elasticsearch docker image file: docker.elastic.co/elasticsearch/elasticsearch:7.1.1

I created kubernetes cluster on bare metal server and using above docker image. plus, synonym.txt file mounted my local storage directory.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.