Error Information

    For all errors listed in the table below, the "status" in the search response always show "fail".
    Table 1. Search Query Response Codes
    Error/Reason Description Response Status Response Description

    success

    query was processed successfully.

    200

    OK

    query request rejected

    high memory consumption, throttler steps in

    429

    Too many requests

    authentication failure

    incorrect auth credentials or no permissions

    403

    Forbidden

    malformed query request

    unrecognized/bad query

    400

    Bad request

    page not found

    endpoint is invalid

    404

    Not found

    pre-condition failed

    pre-condition not met - consistency error

    412

    Precondition failed

    .*

    an error that the server can potentially recover from

    500

    Internal server error

    Partial Errors

    It is possible that when some of the index partitions have reported failures, the "status" in the response does not show fail. This is when the user will see a partial result set for their query.

    Below is the sample response

    {
      "status": {
        "total": 6,
        "failed": 2,
        "successful": 4,
        "errors": {
            "pindex_name_1": "xyz",
            "pindex_name_2": "xyz"
        }
      },
      "request": {
        "query": {
          ...
        },
        "size": 10,
        "from": 0,
        "facets": {},
        "sort": [
          "-_score"
        ]
      },
      "hits": [...],
      "total_hits": ...,
      "max_score": ...,
      "took": ...,
      "facets": {}
    }

    If one or more of the index partitions failed to cater to the request, the user can see partial results. In such a case, the response status is shown as 200 , and the errors object in the response will be a non-zero length value.

    Table 2. Partial Error Details
    Partial Error Description

    context deadline exceeded

    request wasn’t processed/responded-to by the partition in the requested time period

    no planPIndexes for indexName

    FTS node in the process of a rebalance, partitions are being moved

    bleve: pindex_consistency mismatched partition

    RYOW failure - received data from a vbucket with a different UUID while waiting on a sequence number - possibly due to KV rebalance/failover

    pindex not available

    one or more primary index partitions (that do not have replicas) have been failed over (need to rebalance to set them up again)

    cannot perform operation on empty alias

    one or more index partitions are in the process of being set up during a rebalance