To Register a word in order to exclude from the stemming process in Fess-11.0.1

(from github.com/noriseto)
Hi,

Whenever I search for “News”, the results include so many “New”.
In order to avoid that, Fess Configuration Guide recommends to add the word to protwords.txt.
There are protwords.txt for each language but I couldn’t find one for English.
I’ve added “News” for all the protwords.txt (except for English) but the results still include “New”.
What should i do to resolve this?

Regards,
noriseto

(from github.com/marevol)
Did you do reindexing?

(from github.com/noriseto)
Yes, I deleted the index data and re-crawled.
I deleted the index data with the following command

curl -XPOST http://localhost:9200/fess.search/_delete_by_query?conflicts=proceed -d ‘{“query”:{“match_all”:{}}}’

Is there anything else that I should do?

(from github.com/marevol)
protwords.txt is not reloaded in index.
Could you try close and open index?

(from github.com/noriseto)
I tried close and open index, but “new” still pops up in the results.
I also set protwords.txt for English and Japanese and it won’t work either.

The current setting is as follows.

$ curl localhost:9200/fess.search/_settings?pretty
{
“fess.XXXXXXXX” : {
“settings” : {
“index” : {

    ...(snip)

    "analysis" : {
      "filter" : {
        "japanese_keywords" : {
          "type" : "keyword_marker",
          "keywords_path" : "/var/lib/elasticsearch/config/ja/protwords.txt"
        },
        "english_keywords" : {
          "type" : "keyword_marker",
          "keywords_path" : "/var/lib/elasticsearch/config/en/protwords.txt"
        },
      "analyzer" : {
        "english_analyzer" : {
          "filter" : [
            "truncate20_filter",
            "lowercase",
            "english_keywords",
            "possessive_stemmer_en_filter"
          ],
          "type" : "custom",
          "tokenizer" : "standard"
        },
        "standard_analyzer" : {
          "filter" : [
            "alphanum_word_filter",
            "cjk_bigram",
            "stopword_en_filter",
            "lowercase",
            "english_keywords",
            "stemmer_en_filter"
          ],
          "char_filter" : [
            "mapping_ja_filter"
          ],
          "type" : "custom",
          "tokenizer" : "unigram_synonym_tokenizer"
        },
        "japanese_analyzer" : {
          "filter" : [
            "truncate10_filter",
            "fess_japanese_baseform",
            "fess_japanese_stemmer",
            "japanese_pos_filter",
            "lowercase",
            "japanese_keywords"
          ],
          "char_filter" : [
            "mapping_ja_filter",
            "fess_japanese_iteration_mark"
          ],
          "type" : "custom",
          "tokenizer" : "japanese_tokenizer"
        },
      },

      ...(snip)

$ cat /var/lib/elasticsearch/config/en/protwords.txt
Services
News

$ cat /var/lib/elasticsearch/config/ja/protwords.txt
Services
News

What should I try next?

(from github.com/noriseto)
Are we mistaken?

(from github.com/marevol)
How do you check the term?