72 lines
2.3 KiB
Plaintext
72 lines
2.3 KiB
Plaintext
|
[role="xpack"]
|
||
|
[testenv="basic"]
|
||
|
[[indices-reload-analyzers]]
|
||
|
== Reload Search Analyzers
|
||
|
|
||
|
experimental[]
|
||
|
|
||
|
Reloads search analyzers and its resources.
|
||
|
|
||
|
Synonym filters (both `synonym` and `synonym_graph`) can be declared as
|
||
|
updateable if they are only used in <<search-analyzer,search analyzers>>
|
||
|
with the `updateable` flag:
|
||
|
|
||
|
[source,js]
|
||
|
--------------------------------------------------
|
||
|
PUT /my_index
|
||
|
{
|
||
|
"settings": {
|
||
|
"index" : {
|
||
|
"analysis" : {
|
||
|
"analyzer" : {
|
||
|
"my_synonyms" : {
|
||
|
"tokenizer" : "whitespace",
|
||
|
"filter" : ["synonym"]
|
||
|
}
|
||
|
},
|
||
|
"filter" : {
|
||
|
"synonym" : {
|
||
|
"type" : "synonym",
|
||
|
"synonyms_path" : "analysis/synonym.txt",
|
||
|
"updateable" : true <1>
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"mappings": {
|
||
|
"properties": {
|
||
|
"text": {
|
||
|
"type": "text",
|
||
|
"analyzer" : "standard",
|
||
|
"search_analyzer": "my_synonyms" <2>
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
--------------------------------------------------
|
||
|
// CONSOLE
|
||
|
|
||
|
<1> Mark the synonym filter as updateable.
|
||
|
<2> Synonym analyzer is usable as a search_analyzer.
|
||
|
|
||
|
NOTE: Trying to use the above analyzer as an index analyzer will result in an error.
|
||
|
|
||
|
Using the <<indices-reload-analyzers,analyzer reload API>>, you can trigger reloading of the
|
||
|
synonym definition. The contents of the configured synonyms file will be reloaded and the
|
||
|
synonyms definition the filter uses will be updated.
|
||
|
|
||
|
The `_reload_search_analyzers` API can be run on one or more indices and will trigger
|
||
|
reloading of the synonyms from the configured file.
|
||
|
|
||
|
NOTE: Reloading will happen on every node the index has shards, so its important
|
||
|
to update the synonym file contents on every data node (even the ones that don't currently
|
||
|
hold shard copies; shards might be relocated there in the future) before calling
|
||
|
reload to ensure the new state of the file is reflected everywhere in the cluster.
|
||
|
|
||
|
[source,js]
|
||
|
--------------------------------------------------
|
||
|
POST /my_index/_reload_search_analyzers
|
||
|
--------------------------------------------------
|
||
|
// CONSOLE
|
||
|
// TEST[s/^/PUT my_index\n/]
|