Highlighting on ES8 much slower than ES7

Hi,
I've updated my cluster from Elasticsearch 7.17.16 to 8.16.3 and noticed that Kibana is working way slower in ES 8, because most of the query time is spent in HighlightingPhase. The difference is even bigger when using wildcards. Index settings and mappings are the same on both versions. The index is quite small: 8,202,224 docs, 1.36gb storage size.

Mapping:

{
  "mappings": {
    "_doc": {
      "dynamic": "strict",
      "properties": {
        "alternateUrls": {
          "type": "nested",
          "properties": {
            "alternateDefinitionType": {
              "type": "text"
            },
            "alternateLocale": {
              "type": "text"
            },
            "targetName": {
              "type": "text"
            },
            "targetType": {
              "type": "text"
            },
            "targetValue": {
              "type": "text"
            }
          }
        },
        "alternateUrlsRawForQuickSearch": {
          "type": "text"
        },
        "boxConditions": {
          "type": "nested",
          "properties": {
            "device": {
              "type": "text"
            },
            "experimentExpectedVariant": {
              "type": "text"
            },
            "experimentId": {
              "type": "text"
            },
            "experimentParameterName": {
              "type": "text"
            },
            "experimentParameterValue": {
              "type": "text"
            },
            "expression": {
              "type": "text"
            },
            "fromDate": {
              "type": "date",
              "format": "yyyy-MM-dd'T'HH:mm:ss.SSSSSSXXX"
            },
            "guestFlag": {
              "type": "boolean"
            },
            "isTrue": {
              "type": "boolean"
            },
            "localeCode": {
              "type": "text"
            },
            "toDate": {
              "type": "date",
              "format": "yyyy-MM-dd'T'HH:mm:ss.SSSSSSXXX"
            },
            "type": {
              "type": "text"
            },
            "userTraitHash": {
              "type": "text"
            },
            "userTraitValue": {
              "type": "text"
            }
          }
        },
        "boxConditionsRawForQuickSearch": {
          "type": "text"
        },
        "dataSourceAcceptMediaTypes": {
          "type": "text"
        },
        "dataSourceAllowCustomParams": {
          "type": "boolean"
        },
        "dataSourceAllowsPassingPageUrlParams": {
          "type": "boolean"
        },
        "dataSourceCategory": {
          "type": "text"
        },
        "dataSourceDataTypeName": {
          "type": "text"
        },
        "dataSourceDataTypeVersion": {
          "type": "version"
        },
        "dataSourceDescription": {
          "type": "text"
        },
        "dataSourceDomain": {
          "type": "text"
        },
        "dataSourceIcon": {
          "type": "text"
        },
        "dataSourceId": {
          "type": "text"
        },
        "dataSourceInterfaces": {
          "type": "text"
        },
        "dataSourceIsDeprecated": {
          "type": "boolean"
        },
        "dataSourceOAuthMode": {
          "type": "text"
        },
        "dataSourcePassRenderingContext": {
          "type": "text"
        },
        "dataSourceServiceName": {
          "type": "text"
        },
        "dataSourceTimeoutInMillis": {
          "type": "integer"
        },
        "dataSourceTitle": {
          "type": "text"
        },
        "dataSourceUrl": {
          "type": "text"
        },
        "dictionaryKey": {
          "type": "text"
        },
        "dictionaryLanguageCode": {
          "type": "text"
        },
        "dictionaryValue": {
          "type": "text"
        },
        "id": {
          "type": "integer"
        },
        "isPublished": {
          "type": "boolean"
        },
        "name": {
          "type": "keyword"
        },
        "nodeId": {
          "type": "text"
        },
        "pageUrlParameters": {
          "type": "nested",
          "properties": {
            "canonical": {
              "type": "boolean"
            },
            "defaultValue": {
              "type": "text"
            },
            "description": {
              "type": "text"
            },
            "maxValue": {
              "type": "double"
            },
            "minValue": {
              "type": "double"
            },
            "name": {
              "type": "text"
            },
            "required": {
              "type": "boolean"
            },
            "screenParameterName": {
              "type": "text"
            },
            "type": {
              "type": "text"
            },
            "valueMask": {
              "type": "text"
            }
          }
        },
        "pageUrlParametersRawForQuickSearch": {
          "type": "text"
        },
        "parameters": {
          "type": "nested",
          "properties": {
            "name": {
              "type": "text"
            },
            "sourceOfParameter": {
              "type": "text"
            },
            "type": {
              "type": "text"
            },
            "value": {
              "type": "text"
            }
          }
        },
        "parametersRawForQuickSearch": {
          "type": "text"
        },
        "prototypeId": {
          "type": "text"
        },
        "prototypeKind": {
          "type": "text"
        },
        "prototypeName": {
          "type": "text"
        },
        "prototypeVersion": {
          "type": "version"
        },
        "publicationRoutes": {
          "type": "text"
        },
        "redirects": {
          "type": "nested",
          "properties": {
            "conditionName": {
              "type": "text"
            },
            "conditionType": {
              "type": "text"
            },
            "conditionValue": {
              "type": "text"
            },
            "locationName": {
              "type": "text"
            },
            "locationType": {
              "type": "text"
            },
            "locationValue": {
              "type": "text"
            }
          }
        },
        "redirectsRawForQuickSearch": {
          "type": "text"
        },
        "relativeDefinitionUrl": {
          "type": "text"
        },
        "relativeDefinitionUrlForBox": {
          "type": "text"
        },
        "relativeDefinitionUrlForDataSource": {
          "type": "text"
        },
        "siteName": {
          "type": "text"
        },
        "snapshotAuthor": {
          "type": "text"
        },
        "snapshotCreatedAt": {
          "type": "date",
          "format": "yyyy-MM-dd'T'HH:mm:ss.SSSSSSXXX"
        },
        "sourceTab": {
          "type": "text"
        },
        "spaceName": {
          "type": "text"
        },
        "type": {
          "type": "text"
        }
      }
    }
  }
}

Settings:

  "settings": {
    "index": {
      "routing": {
        "allocation": {
          "include": {
            "_tier_preference": "data_content"
          }
        }
      },
      "number_of_shards": "1",
      "provided_name": "index-1",
      "analysis": {
        "analyzer": {
          "default": {
            "filter": [
              "lowercase"
            ],
            "type": "custom",
            "tokenizer": "whitespace"
          }
        }
      },
      "number_of_replicas": "1",
      "uuid": "..",
      "version": {
        "created": "7171199"
      }
    }
  },

Query:

POST /search-alias/_search
{
  "profile": true,
  "track_total_hits": true,
  "sort": [
    {
      "_score": {
        "order": "desc"
      }
    }
  ],
  "fields": [
    {
      "field": "*",
      "include_unmapped": true
    },
    {
      "field": "boxConditions.fromDate",
      "format": "strict_date_optional_time"
    },
    {
      "field": "boxConditions.toDate",
      "format": "strict_date_optional_time"
    },
    {
      "field": "snapshotCreatedAt",
      "format": "strict_date_optional_time"
    }
  ],
  "size": 500,
  "version": true,
  "_source": false,
  "stored_fields": [
    "*"
  ],
  "query": {
    "bool": {
      "must": [
        {
          "query_string": {
            "query": "search phrase test"
          }
        }
      ],
      "filter": [],
      "should": [],
      "must_not": []
    }
  },
  "highlight": {
    "pre_tags": [
      "@kibana-highlighted-field@"
    ],
    "post_tags": [
      "@/kibana-highlighted-field@"
    ],
    "fields": {
      "*": {}
    },
    "fragment_size": 2147483647
  },
  "runtime_mappings": {},
  "script_fields": {}
}

Response ES7:

  "hits" : {
    "total" : {
      "value" : 6557,
      "relation" : "eq"
    },
...
              "type" : "HighlightPhase",
              "description" : "",
              "time_in_nanos" : 287429894,
              "breakdown" : {
                "process_count" : 500,
                "process" : 287424040,
                "next_reader" : 5854,
                "next_reader_count" : 8
              }

Response ES8:

            {
              "type": "HighlightPhase",
              "description": "",
              "time_in_nanos": 1291815787,
              "breakdown": {
                "process_count": 500,
                "process": 1291804079,
                "next_reader": 11708,
                "next_reader_count": 15
              }
            },

HighlightingPhase takes 4.5 times longer.
When the query changes to "query": "*search phrase test*", difference is even bigger.
Reponse ES7 2:

            {
              "type" : "HighlightPhase",
              "description" : "",
              "time_in_nanos" : 440599218,
              "breakdown" : {
                "process_count" : 500,
                "process" : 440591589,
                "next_reader" : 7629,
                "next_reader_count" : 9
              }
            }

Response ES8 2:

            {
              "type": "HighlightPhase",
              "description": "",
              "time_in_nanos": 43822082892,
              "breakdown": {
                "process_count": 500,
                "process": 43822062829,
                "next_reader": 20063,
                "next_reader_count": 14
              }
            },

Now it takes 100x longer, 440ms on ES7 and 43s on ES8.

Is this a bug or can I do something to fix this performance? Kibana is significantly slower.

I also have the same issue with a large increase in the highlight phase between ES7 and ES8. The queries in question would be similar to @Bartosz_Krakowiak ‘s queries above.

There is a screenshot of a quick 10 iteration benchmark with a “unified” highlighter between the two versions.

Data, mappings, index settings etc are the same across the two. You can see the query below.

Query
{
  "track_total_hits": true,
  "_source": false,
  "timeout": "30s",
  "size": 100,
  "profile": true,
  "query": {
    "bool": {
      "must": [
        {
          "bool": {
            "should": [
              {
                "bool": {
                  "must": [
                    {
                      "range": {
                        "founded_date": {
                          "format": "strict_date_optional_time",
                          "gte": "1875-08-18T17:56:00.000Z",
                          "lt": "2025-08-18T16:32:00.000Z"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "bool": {
            "should": [
              {
                "simple_query_string": {
                  "lenient": true,
                  "query": "\"google\"",
                  "boost": 10000,
                  "fields": [
                    "blog_feed_url^10",
                    "blog_url^10",
                    "category_code^10",
                    "city^10",
                    "company.category_code^10",
                    "company.name.label^10",
                    "company.name.label.raw^10",
                    "countrycode^10",
                    "description^10",
                    "email_address^10",
                    "freebaseid^10",
                    "hasstatus^10",
                    "homepage_url^10",
                    "id^10",
                    "label^10",
                    "label-not-analyzed^10",
                    "label.raw^10",
                    "one_competitor^10",
                    "overview^10",
                    "permalink^10",
                    "phone_number^10",
                    "revenue^10",
                    "revenuecurrency^10",
                    "revenuedate^10",
                    "statecode^10",
                    "url^10",
                    "webpage^10"
                  ]
                }
              },
              {
                "simple_query_string": {
                  "lenient": true,
                  "query": "(google~2|google*)",
                  "default_operator": "AND",
                  "fields": [
                    "blog_feed_url^10",
                    "blog_url^10",
                    "category_code^10",
                    "city^10",
                    "company.category_code^10",
                    "company.name.label^10",
                    "company.name.label.raw^10",
                    "countrycode^10",
                    "description^10",
                    "email_address^10",
                    "freebaseid^10",
                    "hasstatus^10",
                    "homepage_url^10",
                    "id^10",
                    "label^10",
                    "label-not-analyzed^10",
                    "label.raw^10",
                    "one_competitor^10",
                    "overview^10",
                    "permalink^10",
                    "phone_number^10",
                    "revenue^10",
                    "revenuecurrency^10",
                    "revenuedate^10",
                    "statecode^10",
                    "url^10",
                    "webpage^10"
                  ]
                }
              }
            ]
          }
        }
      ]
    }
  },
  "highlight": {
    "pre_tags": [
      "@kibana-highlighted-field@"
    ],
    "post_tags": [
      "@/kibana-highlighted-field@"
    ],
    "fields": {
      "*": {
        "type": "unified"
      }
    },
    "fragment_size": 150,
    "number_of_fragments": 2,
    "highlight_query": {
      "bool": {
        "should": [
          {
            "simple_query_string": {
              "lenient": true,
              "query": "\"google\"",
              "boost": 10000,
              "fields": [
                "blog_feed_url^10",
                "blog_url^10",
                "category_code^10",
                "city^10",
                "company.category_code^10",
                "company.name.label^10",
                "company.name.label.raw^10",
                "countrycode^10",
                "description^10",
                "email_address^10",
                "freebaseid^10",
                "hasstatus^10",
                "homepage_url^10",
                "id^10",
                "label^10",
                "label-not-analyzed^10",
                "label.raw^10",
                "one_competitor^10",
                "overview^10",
                "permalink^10",
                "phone_number^10",
                "revenue^10",
                "revenuecurrency^10",
                "revenuedate^10",
                "statecode^10",
                "url^10",
                "webpage^10"
              ]
            }
          },
          {
            "simple_query_string": {
              "lenient": true,
              "query": "(google~2|google*)",
              "default_operator": "AND",
              "fields": [
                "blog_feed_url^10",
                "blog_url^10",
                "category_code^10",
                "city^10",
                "company.category_code^10",
                "company.name.label^10",
                "company.name.label.raw^10",
                "countrycode^10",
                "description^10",
                "email_address^10",
                "freebaseid^10",
                "hasstatus^10",
                "homepage_url^10",
                "id^10",
                "label^10",
                "label-not-analyzed^10",
                "label.raw^10",
                "one_competitor^10",
                "overview^10",
                "permalink^10",
                "phone_number^10",
                "revenue^10",
                "revenuecurrency^10",
                "revenuedate^10",
                "statecode^10",
                "url^10",
                "webpage^10"
              ]
            }
          }
        ]
      }
    }
  },
  "aggs": {
    "dynamicfilter:56462ec0-9526-11ee-96b0-037b3e4468df": {
      "terms": {
        "field": "countrycode",
        "size": 138,
        "shard_size": 138
      }
    },
    "dynamicfilter:94195c90-9526-11ee-96b0-037b3e4468df": {
      "terms": {
        "field": "city",
        "size": 138,
        "shard_size": 138
      }
    },
    "dynamicfilter:1fc40fb0-9527-11ee-96b0-037b3e4468df": {
      "terms": {
        "field": "category_code",
        "size": 138,
        "shard_size": 138
      }
    },
    "dynamicfilter:d6eaa870-9527-11ee-96b0-037b3e4468df": {
      "range": {
        "field": "number_of_employees",
        "ranges": [
          {
            "key": "*-10",
            "to": 10
          },
          {
            "key": "10-50",
            "from": 10,
            "to": 50
          },
          {
            "key": "50-100",
            "from": 50,
            "to": 100
          },
          {
            "key": "100-500",
            "from": 100,
            "to": 500
          },
          {
            "key": "500-1000",
            "from": 500,
            "to": 1000
          },
          {
            "key": "1000-5000",
            "from": 1000,
            "to": 5000
          },
          {
            "key": "5000-10000",
            "from": 5000,
            "to": 10000
          },
          {
            "key": "10000-100000",
            "from": 10000,
            "to": 100000
          },
          {
            "key": "100000-200000",
            "from": 100000,
            "to": 200000
          },
          {
            "key": "200000-400000",
            "from": 200000,
            "to": 400000
          },
          {
            "key": "400000-*",
            "from": 400000
          }
        ]
      }
    }
  },
  "stored_fields": [
    "*"
  ],
  "script_fields": {},
  "docvalue_fields": [
    {
      "field": "deadpooled_date",
      "format": "date_optional_time"
    },
    {
      "field": "founded_date",
      "format": "date_optional_time"
    },
    "id",
    {
      "field": "record_date",
      "format": "date_optional_time"
    }
  ]

From experimenting with “plain” vs “unified” highlighting across 7.x and 8.x, it seems ES7 “unified” is fastest but by far the slowest on ES8.

Help in at least understanding the regression in performance would be greatly appreciated.

@Bartosz_Krakowiak sorry I missed this earlier in the year. Not sure if you are available but happy to discuss your situation still here.

@colmose does seem like you might be seeing the same issue. There are potentially some things that could have caused the regression.

One particular thing both of you could try that I’m aware of is related to this issue:

You can change your index settings to work around that issue for now like this:

PUT $index_name/_settings
{
    "settings": {
        "index.highlight.weight_matches_mode.enabled": false
    }
}

If applying that fix helps then we will likely have a good understanding of what’s causing the regression.

Thanks for getting back @john-wagster . Appreciate the response.

I tested with your proposed setting with the same query against a replica ES8.18.6 instance where the only change was the index_setting and it completely removed the regression from ES7 - in terms of time, I didn’t check the actual output.

Here are the query and mapping that were used (some of the fields were removed for privacy, they were standard “text”/”keyword” fields.)

Query
{
  "track_total_hits": true,
  "_source": false,
  "timeout": "30s",
  "size": 100,
  "query": {
    "bool": {
      "must": [
        {
          "bool": {
            "should": [
              {
                "bool": {
                  "must": [
                    {
                      "range": {
                        "pdate": {
                          "format": "strict_date_optional_time",
                          "gte": "1875-08-18T17:56:00.000Z",
                          "lt": "2025-08-18T16:32:00.000Z"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "bool": {
            "should": [
              {
                "simple_query_string": {
                  "lenient": true,
                  "query": "\"google\"",
                  "boost": 10000,
                  "fields": [
                    "article.author^10",
                    "title^10",
                    "article.source^10",
                    "author^10",
                    "companies^10",
                    "foundcbref^10",
                    "foundnlpref^10",
                    "id^10",
                    "image^10",
                    "siren.nlp.matches.entity/organization^10",
                    "siren.nlp.matches.entity/person^10",
                    "nlpref^10",
                    "siren.nlp.ids.entity/email^10",
                    "siren.nlp.ids.entity/financialAccount^10",
                    "siren.nlp.ids.entity/hashtag^10",
                    "siren.nlp.ids.entity/ipaddress^10",
                    "siren.nlp.ids.entity/location^10",
                    "siren.nlp.ids.entity/macAddress^10",
                    "siren.nlp.ids.entity/organization^10",
                    "siren.nlp.ids.entity/person^10",
                    "siren.nlp.ids.entity/phonenumber^10",
                    "siren.nlp.ids.entity/url^10",
                    "siren.nlp.instances.snippet.entity/email.fromfield^10",
                    "siren.nlp.instances.snippet.entity/email.id^10",
                    "siren.nlp.instances.snippet.entity/email.match^10",
                    "siren.nlp.instances.snippet.entity/email.type^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.fromfield^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.id^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.match^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.type^10",
                    "siren.nlp.instances.snippet.entity/hashtag.fromfield^10",
                    "siren.nlp.instances.snippet.entity/hashtag.id^10",
                    "siren.nlp.instances.snippet.entity/hashtag.match^10",
                    "siren.nlp.instances.snippet.entity/hashtag.type^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.fromfield^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.id^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.match^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.type^10",
                    "siren.nlp.instances.snippet.entity/location.fromfield^10",
                    "siren.nlp.instances.snippet.entity/location.id^10",
                    "siren.nlp.instances.snippet.entity/location.match^10",
                    "siren.nlp.instances.snippet.entity/location.nerType^10",
                    "siren.nlp.instances.snippet.entity/location.type^10",
                    "siren.nlp.instances.snippet.entity/macAddress.fromfield^10",
                    "siren.nlp.instances.snippet.entity/macAddress.id^10",
                    "siren.nlp.instances.snippet.entity/macAddress.match^10",
                    "siren.nlp.instances.snippet.entity/macAddress.type^10",
                    "siren.nlp.instances.snippet.entity/organization.fromfield^10",
                    "siren.nlp.instances.snippet.entity/organization.id^10",
                    "siren.nlp.instances.snippet.entity/organization.match^10",
                    "siren.nlp.instances.snippet.entity/organization.nerType^10",
                    "siren.nlp.instances.snippet.entity/organization.type^10",
                    "siren.nlp.instances.snippet.entity/person.fromfield^10",
                    "siren.nlp.instances.snippet.entity/person.id^10",
                    "siren.nlp.instances.snippet.entity/person.match^10",
                    "siren.nlp.instances.snippet.entity/person.nerType^10",
                    "siren.nlp.instances.snippet.entity/person.type^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.fromfield^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.id^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.match^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.type^10",
                    "siren.nlp.instances.snippet.entity/url.fromfield^10",
                    "siren.nlp.instances.snippet.entity/url.id^10",
                    "siren.nlp.instances.snippet.entity/url.match^10",
                    "siren.nlp.instances.snippet.entity/url.type^10",
                    "siren.nlp.instances.title.entity/email.fromfield^10",
                    "siren.nlp.instances.title.entity/email.id^10",
                    "siren.nlp.instances.title.entity/email.match^10",
                    "siren.nlp.instances.title.entity/email.type^10",
                    "siren.nlp.instances.title.entity/financialAccount.fromfield^10",
                    "siren.nlp.instances.title.entity/financialAccount.id^10",
                    "siren.nlp.instances.title.entity/financialAccount.match^10",
                    "siren.nlp.instances.title.entity/financialAccount.type^10",
                    "siren.nlp.instances.title.entity/hashtag.fromfield^10",
                    "siren.nlp.instances.title.entity/hashtag.id^10",
                    "siren.nlp.instances.title.entity/hashtag.match^10",
                    "siren.nlp.instances.title.entity/hashtag.type^10",
                    "siren.nlp.instances.title.entity/ipaddress.fromfield^10",
                    "siren.nlp.instances.title.entity/ipaddress.id^10",
                    "siren.nlp.instances.title.entity/ipaddress.match^10",
                    "siren.nlp.instances.title.entity/ipaddress.type^10",
                    "siren.nlp.instances.title.entity/location.fromfield^10",
                    "siren.nlp.instances.title.entity/location.id^10",
                    "siren.nlp.instances.title.entity/location.match^10",
                    "siren.nlp.instances.title.entity/location.nerType^10",
                    "siren.nlp.instances.title.entity/location.type^10",
                    "siren.nlp.instances.title.entity/macAddress.fromfield^10",
                    "siren.nlp.instances.title.entity/macAddress.id^10",
                    "siren.nlp.instances.title.entity/macAddress.match^10",
                    "siren.nlp.instances.title.entity/macAddress.type^10",
                    "siren.nlp.instances.title.entity/organization.fromfield^10",
                    "siren.nlp.instances.title.entity/organization.id^10",
                    "siren.nlp.instances.title.entity/organization.match^10",
                    "siren.nlp.instances.title.entity/organization.nerType^10",
                    "siren.nlp.instances.title.entity/organization.type^10",
                    "siren.nlp.instances.title.entity/person.fromfield^10",
                    "siren.nlp.instances.title.entity/person.id^10",
                    "siren.nlp.instances.title.entity/person.match^10",
                    "siren.nlp.instances.title.entity/person.nerType^10",
                    "siren.nlp.instances.title.entity/person.type^10",
                    "siren.nlp.instances.title.entity/phonenumber.fromfield^10",
                    "siren.nlp.instances.title.entity/phonenumber.id^10",
                    "siren.nlp.instances.title.entity/phonenumber.match^10",
                    "siren.nlp.instances.title.entity/phonenumber.type^10",
                    "siren.nlp.instances.title.entity/url.fromfield^10",
                    "siren.nlp.instances.title.entity/url.id^10",
                    "siren.nlp.instances.title.entity/url.match^10",
                    "siren.nlp.instances.title.entity/url.type^10",
                    "siren.nlp.matches.entity/email^10",
                    "siren.nlp.matches.entity/financialAccount^10",
                    "siren.nlp.matches.entity/hashtag^10",
                    "siren.nlp.matches.entity/ipaddress^10",
                    "siren.nlp.matches.entity/location^10",
                    "siren.nlp.matches.entity/macAddress^10",
                    "siren.nlp.matches.entity/phonenumber^10",
                    "siren.nlp.matches.entity/url^10",
                    "siren.nlp.taxonomy_annotated.snippet^10",
                    "siren.nlp.taxonomy_annotated.title^10",
                    "snippet^10",
                    "source^10",
                    "title.raw^10",
                    "url^10"
                  ]
                }
              },
              {
                "simple_query_string": {
                  "lenient": true,
                  "query": "(google~2|google*)",
                  "default_operator": "AND",
                  "fields": [
                    "article.author^10",
                    "title^10",
                    "article.source^10",
                    "author^10",
                    "companies^10",
                    "foundcbref^10",
                    "foundnlpref^10",
                    "id^10",
                    "image^10",
                    "siren.nlp.matches.entity/organization^10",
                    "siren.nlp.matches.entity/person^10",
                    "nlpref^10",
                    "siren.nlp.ids.entity/email^10",
                    "siren.nlp.ids.entity/financialAccount^10",
                    "siren.nlp.ids.entity/hashtag^10",
                    "siren.nlp.ids.entity/ipaddress^10",
                    "siren.nlp.ids.entity/location^10",
                    "siren.nlp.ids.entity/macAddress^10",
                    "siren.nlp.ids.entity/organization^10",
                    "siren.nlp.ids.entity/person^10",
                    "siren.nlp.ids.entity/phonenumber^10",
                    "siren.nlp.ids.entity/url^10",
                    "siren.nlp.instances.snippet.entity/email.fromfield^10",
                    "siren.nlp.instances.snippet.entity/email.id^10",
                    "siren.nlp.instances.snippet.entity/email.match^10",
                    "siren.nlp.instances.snippet.entity/email.type^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.fromfield^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.id^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.match^10",
                    "siren.nlp.instances.snippet.entity/financialAccount.type^10",
                    "siren.nlp.instances.snippet.entity/hashtag.fromfield^10",
                    "siren.nlp.instances.snippet.entity/hashtag.id^10",
                    "siren.nlp.instances.snippet.entity/hashtag.match^10",
                    "siren.nlp.instances.snippet.entity/hashtag.type^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.fromfield^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.id^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.match^10",
                    "siren.nlp.instances.snippet.entity/ipaddress.type^10",
                    "siren.nlp.instances.snippet.entity/location.fromfield^10",
                    "siren.nlp.instances.snippet.entity/location.id^10",
                    "siren.nlp.instances.snippet.entity/location.match^10",
                    "siren.nlp.instances.snippet.entity/location.nerType^10",
                    "siren.nlp.instances.snippet.entity/location.type^10",
                    "siren.nlp.instances.snippet.entity/macAddress.fromfield^10",
                    "siren.nlp.instances.snippet.entity/macAddress.id^10",
                    "siren.nlp.instances.snippet.entity/macAddress.match^10",
                    "siren.nlp.instances.snippet.entity/macAddress.type^10",
                    "siren.nlp.instances.snippet.entity/organization.fromfield^10",
                    "siren.nlp.instances.snippet.entity/organization.id^10",
                    "siren.nlp.instances.snippet.entity/organization.match^10",
                    "siren.nlp.instances.snippet.entity/organization.nerType^10",
                    "siren.nlp.instances.snippet.entity/organization.type^10",
                    "siren.nlp.instances.snippet.entity/person.fromfield^10",
                    "siren.nlp.instances.snippet.entity/person.id^10",
                    "siren.nlp.instances.snippet.entity/person.match^10",
                    "siren.nlp.instances.snippet.entity/person.nerType^10",
                    "siren.nlp.instances.snippet.entity/person.type^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.fromfield^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.id^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.match^10",
                    "siren.nlp.instances.snippet.entity/phonenumber.type^10",
                    "siren.nlp.instances.snippet.entity/url.fromfield^10",
                    "siren.nlp.instances.snippet.entity/url.id^10",
                    "siren.nlp.instances.snippet.entity/url.match^10",
                    "siren.nlp.instances.snippet.entity/url.type^10",
                    "siren.nlp.instances.title.entity/email.fromfield^10",
                    "siren.nlp.instances.title.entity/email.id^10",
                    "siren.nlp.instances.title.entity/email.match^10",
                    "siren.nlp.instances.title.entity/email.type^10",
                    "siren.nlp.instances.title.entity/financialAccount.fromfield^10",
                    "siren.nlp.instances.title.entity/financialAccount.id^10",
                    "siren.nlp.instances.title.entity/financialAccount.match^10",
                    "siren.nlp.instances.title.entity/financialAccount.type^10",
                    "siren.nlp.instances.title.entity/hashtag.fromfield^10",
                    "siren.nlp.instances.title.entity/hashtag.id^10",
                    "siren.nlp.instances.title.entity/hashtag.match^10",
                    "siren.nlp.instances.title.entity/hashtag.type^10",
                    "siren.nlp.instances.title.entity/ipaddress.fromfield^10",
                    "siren.nlp.instances.title.entity/ipaddress.id^10",
                    "siren.nlp.instances.title.entity/ipaddress.match^10",
                    "siren.nlp.instances.title.entity/ipaddress.type^10",
                    "siren.nlp.instances.title.entity/location.fromfield^10",
                    "siren.nlp.instances.title.entity/location.id^10",
                    "siren.nlp.instances.title.entity/location.match^10",
                    "siren.nlp.instances.title.entity/location.nerType^10",
                    "siren.nlp.instances.title.entity/location.type^10",
                    "siren.nlp.instances.title.entity/macAddress.fromfield^10",
                    "siren.nlp.instances.title.entity/macAddress.id^10",
                    "siren.nlp.instances.title.entity/macAddress.match^10",
                    "siren.nlp.instances.title.entity/macAddress.type^10",
                    "siren.nlp.instances.title.entity/organization.fromfield^10",
                    "siren.nlp.instances.title.entity/organization.id^10",
                    "siren.nlp.instances.title.entity/organization.match^10",
                    "siren.nlp.instances.title.entity/organization.nerType^10",
                    "siren.nlp.instances.title.entity/organization.type^10",
                    "siren.nlp.instances.title.entity/person.fromfield^10",
                    "siren.nlp.instances.title.entity/person.id^10",
                    "siren.nlp.instances.title.entity/person.match^10",
                    "siren.nlp.instances.title.entity/person.nerType^10",
                    "siren.nlp.instances.title.entity/person.type^10",
                    "siren.nlp.instances.title.entity/phonenumber.fromfield^10",
                    "siren.nlp.instances.title.entity/phonenumber.id^10",
                    "siren.nlp.instances.title.entity/phonenumber.match^10",
                    "siren.nlp.instances.title.entity/phonenumber.type^10",
                    "siren.nlp.instances.title.entity/url.fromfield^10",
                    "siren.nlp.instances.title.entity/url.id^10",
                    "siren.nlp.instances.title.entity/url.match^10",
                    "siren.nlp.instances.title.entity/url.type^10",
                    "siren.nlp.matches.entity/email^10",
                    "siren.nlp.matches.entity/financialAccount^10",
                    "siren.nlp.matches.entity/hashtag^10",
                    "siren.nlp.matches.entity/ipaddress^10",
                    "siren.nlp.matches.entity/location^10",
                    "siren.nlp.matches.entity/macAddress^10",
                    "siren.nlp.matches.entity/phonenumber^10",
                    "siren.nlp.matches.entity/url^10",
                    "siren.nlp.taxonomy_annotated.snippet^10",
                    "siren.nlp.taxonomy_annotated.title^10",
                    "snippet^10",
                    "source^10",
                    "title.raw^10",
                    "url^10"
                  ]
                }
              }
            ]
          }
        }
      ]
    }
  },
  "highlight": {
    "pre_tags": [
      "@kibana-highlighted-field@"
    ],
    "post_tags": [
      "@/kibana-highlighted-field@"
    ],
    "fields": {
      "*": {
        "type": "unified"
      }
    },
    "fragment_size": 150,
    "number_of_fragments": 2,
    "highlight_query": {
      "bool": {
        "should": [
          {
            "simple_query_string": {
              "lenient": true,
              "query": "\"google\"",
              "boost": 10000,
              "fields": [
                "article.author^10",
                "title^10",
                "article.source^10",
                "author^10",
                "companies^10",
                "foundcbref^10",
                "foundnlpref^10",
                "id^10",
                "image^10",
                "snippet^10",
                "source^10",
                "title.raw^10",
                "url^10"
              ]
            }
          },
          {
            "simple_query_string": {
              "lenient": true,
              "query": "(google~2|google*)",
              "default_operator": "AND",
              "fields": [
                "article.author^10",
                "title^10",
                "article.source^10",
                "author^10",
                "companies^10",
                "foundcbref^10",
                "foundnlpref^10",
                "id^10",
                "image^10",
                "snippet^10",
                "source^10",
                "title.raw^10",
                "url^10"
              ]
            }
          }
        ]
      }
    }
  },
  "aggs": {},
  "stored_fields": [
    "*"
  ],
  "script_fields": {},
  "docvalue_fields": [
    {
      "field": "pdate",
      "format": "date_optional_time"
    },
    {
      "field": "record_date",
      "format": "date_optional_time"
    }
  ]
}
Mapping
{
  "company" : {
    "mappings" : {
      "dynamic_templates" : [
        {
          "strings" : {
            "match" : "*",
            "match_mapping_type" : "string",
            "mapping" : {
              "type" : "keyword"
            }
          }
        }
      ],
      "properties" : {
        "blog_feed_url" : {
          "type" : "keyword"
        },
        "blog_url" : {
          "type" : "keyword"
        },
        "category_code" : {
          "type" : "keyword",
          "copy_to" : [
            "company.category_code"
          ]
        },
        "city" : {
          "type" : "keyword"
        },
        "company" : {
          "properties" : {
            "category_code" : {
              "type" : "keyword",
              "store" : true
            },
            "name" : {
              "properties" : {
                "label" : {
                  "type" : "text",
                  "store" : true,
                  "fields" : {
                    "raw" : {
                      "type" : "keyword",
                      "ignore_above" : 768
                    }
                  }
                }
              }
            },
            "number_of_employees" : {
              "type" : "long",
              "store" : true
            }
          }
        },
        "countrycode" : {
          "type" : "keyword"
        },
        "deadpooled_date" : {
          "type" : "date",
          "format" : "strict_date_optional_time||yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
          "ignore_malformed" : true
        },
        "description" : {
          "type" : "text",
          "analyzer" : "custom_analyzer",
          "fielddata" : true
        },
        "email_address" : {
          "type" : "keyword"
        },
        "founded_date" : {
          "type" : "date",
          "format" : "strict_date_optional_time||yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
          "ignore_malformed" : true
        },
        "founded_month" : {
          "type" : "long"
        },
        "founded_year" : {
          "type" : "long"
        },
        "freebaseid" : {
          "type" : "keyword"
        },
        "hasstatus" : {
          "type" : "keyword"
        },
        "homepage_url" : {
          "type" : "keyword"
        },
        "id" : {
          "type" : "keyword"
        },
        "label" : {
          "type" : "text",
          "fields" : {
            "raw" : {
              "type" : "keyword",
              "ignore_above" : 768
            }
          },
          "copy_to" : [
            "company.name.label"
          ]
        },
        "label-not-analyzed" : {
          "type" : "keyword"
        },
        "location" : {
          "type" : "geo_point"
        },
        "number_of_employees" : {
          "type" : "long",
          "copy_to" : [
            "company.number_of_employees"
          ]
        },
        "one_competitor" : {
          "type" : "keyword"
        },
        "overview" : {
          "type" : "text",
          "analyzer" : "custom_analyzer",
          "fielddata" : true
        },
        "permalink" : {
          "type" : "keyword"
        },
        "phone_number" : {
          "type" : "keyword"
        },
        "record_date" : {
          "type" : "alias",
          "path" : "founded_date"
        },
        "revenue" : {
          "type" : "keyword"
        },
        "revenuecurrency" : {
          "type" : "keyword"
        },
        "revenuedate" : {
          "type" : "keyword"
        },
        "statecode" : {
          "type" : "keyword"
        },
        "url" : {
          "type" : "keyword"
        },
        "webpage" : {
          "type" : "text"
        }
      }
    }
  }
}

Is there any other info I can provide to help dig in this?

I’m glad that helped.

I don’t think there’s any other information needed right now. Just have to wait on the fix. Sorry about the regression. I’ll link to this thread on the issue.

Let me know if you have any other problems.