Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-31684

QueryPlanKilled (operation exceeded time limit) in $changeStream with updateLookup

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.6.2, 3.7.1
    • Affects Version/s: 3.6.0-rc0
    • Component/s: Querying, Replication
    • None
    • Fully Compatible
    • ALL
    • v3.6
    • Hide
      1. start a single node replica set
      2. cd into mongo repository
      3. download the attached repro script: change_streams_repro.js
      4. run the script:
        > mongo change_streams_repro.js
      Show
      start a single node replica set cd into mongo repository download the attached repro script: change_streams_repro.js run the script: > mongo change_streams_repro.js
    • Query 2017-11-13, Query 2017-12-04, Query 2017-12-18, Query 2018-01-01
    • 0

      On a 3.6.0-rc0 single node replica set, while applying a CRUD workload with 16 or more threads, a change stream using the option fullDocument: updateLookup eventually fails during a getMore with the following error:

      2017-10-23T16:51:32.883-0400 I QUERY    [thread2] js thread raised js exception: JSInterpreterFailure: Error: getMore command failed: {
      	"operationTime" : Timestamp(1508791892, 30247),
      	"ok" : 0,
      	"errmsg" : "collection or index disappeared when cursor yielded: ExceededTimeLimit: operation exceeded time limit",
      	"code" : 175,
      	"codeName" : "QueryPlanKilled",
      	"$clusterTime" : {
      		"clusterTime" : Timestamp(1508791892, 30249),
      		"signature" : {
      			"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
      			"keyId" : NumberLong(0)
      		}
      	}
      }
      

            Assignee:
            martin.neupauer@mongodb.com Martin Neupauer
            Reporter:
            yves.duhem Yves Duhem
            Votes:
            0 Vote for this issue
            Watchers:
            13 Start watching this issue

              Created:
              Updated:
              Resolved: