-
Type:
Bug
-
Resolution: Done
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Concurrency, Testing Infrastructure
-
None
-
ALL
-
None
-
3
-
None
-
None
-
None
-
None
-
None
-
None
The test expects that if an atomic write op is running, a subsequent read op will wait pending completing of that write op. However, in this case the same atomic write op is running before and after the read op runs, and the write op indicates numYields: 0.
Could this be due to a page fault exception aborting the update and retrying it?
Sun Jan 22 14:01:07 [initandlisten] connection accepted from 127.0.0.1:33462 #48 (17 connections now open) { "inprog" : [ { "opid" : 12011915, "active" : true, "lockType" : "write", "waitingForLock" : false, "secs_running" : 0, "op" : "update", "ns" : "test.update_yield1", "query" : { "$atomic" : true }, "client" : "127.0.0.1:33462", "desc" : "conn", "threadId" : "0x46118950", "connectionId" : 48, "numYields" : 0 } ] } assert: [[ ]] != [[ { "opid" : 12011915, "active" : true, "lockType" : "write", "waitingForLock" : false, "secs_running" : 17, "op" : "update", "ns" : "test.update_yield1", "query" : { "$atomic" : true }, "client" : "127.0.0.1:33462", "desc" : "conn", "threadId" : "0x46118950", "connectionId" : 48, "numYields" : 0 } ]] are not equal : should have been atomic Error("Printing Stack Trace")@:0 ()@src/mongo/shell/utils.js:37 ("[[ ]] != [[\n\t{\n\t\t\"opid\" : 12011915,\n\t\t\"active\" : true,\n\t\t\"lockType\" : \"write\",\n\t\t\"waitingForLock\" : false,\n\t\t\"secs_running\" : 17,\n\t\t\"op\" : \"update\",\n\t\t\"ns\" : \"test.update_yield1\",\n\t\t\"query\" : {\n\t\t\t\"$atomic\" : true\n\t\t},\n\t\t\"client\" : \"127.0.0.1:33462\",\n\t\t\"desc\" : \"conn\",\n\t\t\"threadId\" : \"0x46118950\",\n\t\t\"connectionId\" : 48,\n\t\t\"numYields\" : 0\n\t}\n]] are not equal : should have been atomic")@src/mongo/shell/utils.js:58 ([object Array],[object Array],"should have been atomic")@src/mongo/shell/utils.js:84 @/mnt/home/buildbot/slave/Linux_64bit_Weekly_Slow_Tests/mongo/jstests/slowWeekly/update_yield1.js:79 Sun Jan 22 14:01:24 uncaught exception: [[ ]] != [[ { "opid" : 12011915, "active" : true, "lockType" : "write", "waitingForLock" : false, "secs_running" : 17, "op" : "update", "ns" : "test.update_yield1", "query" : { "$atomic" : true }, "client" : "127.0.0.1:33462", "desc" : "conn", "threadId" : "0x46118950", "connectionId" : 48, "numYields" : 0 } ]] are not equal : should have been atomic