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

Log "Index scan timed out" when scan timing out during scanPipeline.Execute()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • Morpheus
    • 7.2.4
    • secondary-index
    • None
    • Untriaged
    • 0
    • Unknown

    Description

      • If scan for partitioned index times out on few of the partitions during scanPipeline.Execute(), error is not logged on indexer side. 
      • Only ItemWriter.Shutdown is done in CancelCallback which sends err to IndexConnection.
      • Increment in num_scan_timeouts can be seen in stats.

       

      func (s *scanCoordinator) handleScanRequest(req *ScanRequest, w ScanResponseWriter,
       is IndexSnapshot, t0 time.Time) {
       waitTime := time.Now().Sub(t0)
       scanPipeline := NewScanPipeline(req, w, is, s.config.Load())
       cancelCb := NewCancelCallback(req, func(e error) {
       scanPipeline.Cancel(e)
       })
       cancelCb.Run()
       defer cancelCb.Done()
       
      err := scanPipeline.Execute()
      ...
          if err != nil {
              status := fmt.Sprintf("(error = %s)", err)
              logging.LazyVerbose(func() string {
                  return fmt.Sprintf("%s RESPONSE rows:%d, scanned:%d, waitTime:%v, totalTime:%v, status:%s, requestId:%s",
                      req.LogPrefix, scanPipeline.RowsReturned(), scanPipeline.RowsScanned(), waitTime, scanTime, status, req.RequestId)
              })
              s.updateErrStats(req, err)
          }

      Attachments

        For Gerrit Dashboard: MB-61600
        # Subject Branch Project Status CR V

        Activity

          People

            dhananjay.kshirsagar Dhananjay Kshirsagar
            dhananjay.kshirsagar Dhananjay Kshirsagar
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There is 1 open Gerrit change

                PagerDuty