ElasticSearch 7.5.2: Scores must be positive or null exception

Hello,

We're getting this exception from ElasticSearch for one specific search term:

{
  "error": {
    "root_cause": [
      {
        "type": "illegal_argument_exception",
        "reason": "Scores must be positive or null"
      }
    ],
    "type": "search_phase_execution_exception",
    "reason": "all shards failed",
    "phase": "query",
    "grouped": true,
    "failed_shards": [
      {
        "shard": 0,
        "reason": {
          "type": "illegal_argument_exception",
          "reason": "Scores must be positive or null"
        }
      }
    ],
    "caused_by": {
      "type": "illegal_argument_exception",
      "reason": "Scores must be positive or null",
      "caused_by": {
        "type": "illegal_argument_exception",
        "reason": "Scores must be positive or null"
      }
    }
  },
  "status": 400
}

The search clause that causes this:
multi_match, with type "cross_fields" and "tie_breaker" between 0.0 and 1.0.

The query works with a different type setting, and/or without the tie_breaker setting.

Does anyone know how to resolve this? So it works with these settings?

I know this might be tricky, but is there chance for a small reproduction?

Also, can you share the output of the search with the parameter error_trace=true and paste the full stack trace here? That might already help to see where this is coming from.

Also, is this a cluster where all data has been indexed under 7.x (not an upgrade from 6.x)?

We were not able to reproduce it in a smaller test index sorry, it also does seem to only happen with querystrings with lots of results (10k+).
_count gives 19594 documents in the index.

The cluster has had upgrades from 6.5 -> 6.7 -> 7.0 -> 7.2 -> 7.5.2. But this specific index has been created under 7.5.2.

Output with error_trace=true: https://pastebin.com/d8wWMEFS
(sorry, was not able to post it here because of size limits)

can you also provide the full query with explain: true in it, and put that output in another pastebin?

Thanks a lot!

Automatically closed after 28 days.

This is caused by the following underlying bug: https://github.com/elastic/elasticsearch/issues/44700