Issue - completion suggester with custom keyword lowercase analyzer not working as expected. We can reproduce the issue with following steps.
Not able to understand whats causing issue here. However, if we search for "PRAXIS CONSULTING AND INFORMATION SERVICES PRIVATE" , it is giving result.
Create index
curl -X PUT "localhost:9200/com.tmp.index?pretty"  -H 'Content-Type: application/json' -d'{
  "mappings": {
    "dynamic": "false",
    "properties": {
      "namesuggest": {
        "type": "completion",
        "analyzer": "keyword_lowercase_analyzer",
        "preserve_separators": true,
        "preserve_position_increments": true,
        "max_input_length": 50,
        "contexts": [
          {
            "name": "searchable",
            "type": "CATEGORY"
          }
        ]
      }
    }
  },
  "settings": {
    "index": {
      "mapping": {
        "ignore_malformed": "true"
      },
      "refresh_interval": "5s",
      "analysis": {
        "analyzer": {
          "keyword_lowercase_analyzer": {
            "filter": [
              "lowercase"
            ],
            "type": "custom",
            "tokenizer": "keyword"
          }
        }
      },
      "number_of_replicas": "0",
      "number_of_shards": "1"
    }
  }
}'
Index document
curl -X PUT "localhost:9200/com.tmp.index/_doc/123?pretty" -H 'Content-Type: application/json' -d'{
    "namesuggest": {
        "input": [
            "PRAXIS CONSULTING AND INFORMATION SERVICES PRIVATE LIMITED."
        ],
        "contexts": {
            "searchable": [
                "*"
            ]
        }
    }
}
'
Issue - Complete suggest not giving result
curl -X GET "localhost:9200/com.tmp.index/_search?pretty" -H 'Content-Type: application/json' -d'{
    "suggest": {
        "legalEntity": {
            "prefix": "PRAXIS CONSULTING AND INFORMATION SERVICES PRIVATE LIMITED.",
            "completion": {
                "field": "namesuggest",
                "size": 10,
                "contexts": {
                    "searchable": [
                        {
                            "context": "*",
                            "boost": 1,
                            "prefix": false
                        }
                    ]
                }
            }
        }
    }
}'
 
                        
You are facing this issue because of default value of
max_input_lengthparameter is set to50.Below is description given for this parameter in documentation:
If you enter below string which is exact 50 character then you will get response:
PRAXIS CONSULTING AND INFORMATION SERVICES PRIVATENow if you add one more or two character to above string then it will not resturn the result:
PRAXIS CONSULTING AND INFORMATION SERVICES PRIVATE LYou can use this default behaviour or you can updated your index mapping with increase value of
max_input_lengthparameter and reindex your data.You will get response like below after updating index: