Defining analyzer or any index.* properties in elasticsearch.yml is deprecated and will not work in Elasticsearch 5 (next version after 2.3).
      We should move away from using this approach and instead incorporate the Analyzer definition during the create index phase.
      Here is the API for it

      This will work for all the analyzer def based on reasonable default implementations of Lucene / Elasticsearch. Each tokenizer and filter and char set can be given a name.
      One can also pass a fully qualified class name instead of the short name (to be verified)

      What about custom implementations of Tokenizer / Filter. The natural way in Elasticsearch is to write and deploy a plugin which contains a small implementation enlisting the tokenizers or filter by name and the actual implementations in a Jar. The main gotcha is that implementation classes must implement Elasticsearch interfaces.

      How far should we help users deploy their custom analyzer implementations :

      • build the plugin distro?
      • check the presence of the named analyzers or components (which ES API)?
      • change Analyzerdef to adopt a string based name solution like Elasticsearch?


          Issue links



              • Assignee:
                yrodiere Yoann Rodière
                emmanuel Emmanuel Bernard
              • Votes:
                0 Vote for this issue
                2 Start watching this issue


                • Created: