Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-59689

[FTS] pIndexLookup Encounters Server Write Timeout Instead of Returning an Error

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 7.6.0
    • 7.6.0, 7.2.0
    • fts
    • Untriaged
    • 0
    • Unknown

    Description

      While doing some testing of the /pindexLookup endpoint in Postman, I kept running into a 503 error with the following response: 

      {{

      {"status":"fail", "error": "server write timeout"}

      }}

       

      Server build: 7.6.0-1785

      Request was sent through Postman to http://localhost:8094/api/bucket/{{bucket-name/scope/scope-name/index/index-name/pindexLookup}}

      Authorization was basic Username/Password. Username and password are both valid and worked with other endpoints.
      Bucket name, scope name, and index name are all valid, and worked fine with other endpoints. 

      Body used a valid{{ "docID" }}of{} { "docID": "hotel_5848"}{}, which matches a document that should be included in the index. 

      I used the following index definition with the travel-sample bucket: 
      {
      "name": "travel-sample.inventory.travel-test",
      "type": "fulltext-index",
      "params": {
      "doc_config":

      { "docid_prefix_delim": "", "docid_regexp": "", "mode": "scope.collection.type_field", "type_field": "type" }

      ,
      "mapping": {
      "default_analyzer": "standard",
      "default_datetime_parser": "dateTimeOptional",
      "default_field": "_all",
      "default_mapping":

      { "dynamic": true, "enabled": false }

      ,
      "default_type": "_default",
      "docvalues_dynamic": false,
      "index_dynamic": true,
      "store_dynamic": false,
      "type_field": "_type",
      "types": {
      "inventory.hotel": {
      "dynamic": false,
      "enabled": true,
      "properties": {
      "reviews": {
      "dynamic": false,
      "enabled": true,
      "properties": {
      "ratings": {
      "dynamic": false,
      "enabled": true,
      "properties": {
      "Cleanliness": {
      "enabled": true,
      "dynamic": false,
      "fields": [

      { "docvalues": true, "include_in_all": true, "index": true, "name": "Cleanliness", "store": true, "type": "number" }

      ]
      }
      }
      },
      "content": {
      "enabled": true,
      "dynamic": false,
      "fields": [

      { "docvalues": true, "include_in_all": true, "include_term_vectors": true, "index": true, "name": "content", "store": true, "type": "text" }

      ]
      }
      }
      },
      "pets_ok": {
      "enabled": true,
      "dynamic": false,
      "fields": [

      { "docvalues": true, "include_in_all": true, "include_term_vectors": true, "index": true, "name": "pets_ok", "store": true, "type": "text" }

      ]
      }
      }
      }
      }
      },
      "store": {
      "indexType": "scorch",
      "segmentVersion": 15
      }
      },
      "sourceType": "gocbcore",
      "sourceName": "travel-sample",
      "sourceUUID": "8f866261438f8b0d415a437552f3ae99",
      "sourceParams": {},
      "planParams": {
      "maxPartitionsPerPIndex": 1024,
      "indexPartitions": 1,
      "numReplicas": 0
      },
      "uuid": "766ddce5d41a3b41"
      }
      The question is, why does the request encounter a server write timeout, rather than returning an error that the document couldn't be found, or returning the expected response for the endpoint, when the document is present in the index? 

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            sarthak.dua Sarthak Dua
            sarah.welton Sarah Welton
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty