Details
Description
If you're trying to update the same document from multiple threads and looking it up by indexed _id, a yield to load the document from disk will result in an invalid document location in the UpdateStage. First turned up on MCI windows build in fsm_all.js, log is attached.
2015-01-12T15:46:53.716-0500 I QUERY Error: 48 threads threw
|
|
|
Error: [1] != [0] are not equal : {
|
"nMatched" : 0,
|
"nUpserted" : 0,
|
"nModified" : 0,
|
"writeError" : {
|
"code" : 96,
|
"errmsg" : "Exec error: InternalError update stage failed to read member w/ loc from child"
|
}
|
}
|
at quietlyDoAssert (jstests/concurrency/fsm_libs/assert.js:53:15)
|
at Function.assert.eq (src/mongo/shell/assert.js:38:5)
|
at wrapAssertFn (jstests/concurrency/fsm_libs/assert.js:60:16)
|
at Function.assertWithLevel.(anonymous function) [as eq] (jstests/concurrency/fsm_libs/assert.js:99:13)
|
at Object.data.assertResult (jstests/concurrency/fsm_workloads/update_multifield.js:84:35)
|
at Object.update (jstests/concurrency/fsm_workloads/update_multifield.js:53:18)
|
at Object.runFSM [as run] (jstests/concurrency/fsm_libs/fsm.js:19:16)
|
at <anonymous>:8:13
|
at Object.main (jstests/concurrency/fsm_libs/worker_thread.js:68:17)
|
at ____MongoToV8_newFunction_temp (<anonymous>:5:25)
|
|
|
at throwError (jstests/concurrency/fsm_libs/runner.js:261:23)
|
at jstests/concurrency/fsm_libs/runner.js:390:17
|
at Array.forEach (native)
|
at runWorkloads (jstests/concurrency/fsm_libs/runner.js:345:22)
|
at serial (jstests/concurrency/fsm_libs/runner.js:406:13)
|
at jstests/concurrency/fsm_test.js:27:1 at jstests/concurrency/fsm_libs/runner.js:273
|
Attachments
Issue Links
- links to