[SERVER-6878] distinct3.js test may leave an operation running after the test finishes; evalb does not restrict profiling query to operations the test itself generates Created: 28/Aug/12  Updated: 11/Jul/16  Resolved: 30/Aug/12

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: None
Fix Version/s: 2.0.8, 2.2.1, 2.3.0

Type: Bug Priority: Major - P3
Reporter: Aaron Staple Assignee: Aaron Staple
Resolution: Done Votes: 0
Labels: buildbot
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Operating System: ALL
Participants:

 Description   

This caused the following buildbot failure:
<http://buildbot.mongodb.org/builders/V2.0%20Linux%20RHEL%2064-bit/builds/223/steps/test_1/logs/stdio>

assert failed : C : {
	"ts" : ISODate("2012-08-28T07:57:44.401Z"),
	"op" : "insert",
	"ns" : "test.jstests_distinct3",
	"millis" : 0,
	"client" : "127.0.0.1",
	"user" : ""
}
Error("Printing Stack Trace")@:0
()@shell/utils.js:35
("assert failed : C : {\n\t\"ts\" : ISODate(\"2012-08-28T07:57:44.401Z\"),\n\t\"op\" : \"insert\",\n\t\"ns\" : \"test.jstests_distinct3\",\n\t\"millis\" : 0,\n\t\"client\" : \"127.0.0.1\",\n\t\"user\" : \"\"\n}")@shell/utils.js:46
(false,"C : {\n\t\"ts\" : ISODate(\"2012-08-28T07:57:44.401Z\"),\n\t\"op\" : \"insert\",\n\t\"ns\" : \"test.jstests_distinct3\",\n\t\"millis\" : 0,\n\t\"client\" : \"127.0.0.1\",\n\t\"user\" : \"\"\n}")@shell/utils.js:54
@/data/buildslaves/Linux_RHEL_64bit_V2.0/mongo/jstests/evalb.js:14
 
Tue Aug 28 03:57:44 uncaught exception: assert failed : C : {
	"ts" : ISODate("2012-08-28T07:57:44.401Z"),
	"op" : "insert",
	"ns" : "test.jstests_distinct3",
	"millis" : 0,
	"client" : "127.0.0.1",
	"user" : ""
}

  • distinct3.js starts a parallel shell that does several writes without a read or get last error. distinct3.js waits for the parallel shell to finish but not for the writes triggered by the parallel shell to complete. As a result, the writes may continue into the next test. (Generally this will not cause problems because the writes are to the jstests_distinct3 collection, but we should probably clean it up.)
  • The evalb test turns on profiling for the test database and then assumes it is the only script generating operations for profiling. This is not a valid assumption in the parallel or small oplog test suites. The fix would probably be similar to the SERVER-5293 fix.


 Comments   
Comment by auto [ 12/Sep/12 ]

Author:

{u'date': u'2012-08-28T23:14:12-07:00', u'email': u'aaron@10gen.com', u'name': u'Aaron'}

Message: SERVER-6878 Clean distinct3.js and make evalb.js more robust.

Conflicts:

jstests/evalb.js
Branch: v2.0
https://github.com/mongodb/mongo/commit/72cc3481b9e9ec791365b8ba6c183945e8093147

Comment by auto [ 12/Sep/12 ]

Author:

{u'date': u'2012-08-28T23:14:12-07:00', u'email': u'aaron@10gen.com', u'name': u'Aaron'}

Message: SERVER-6878 Clean distinct3.js and make evalb.js more robust.
Branch: v2.2
https://github.com/mongodb/mongo/commit/c4873256f35d45260c2a631df8124670882d9682

Comment by auto [ 30/Aug/12 ]

Author:

{u'date': u'2012-08-28T23:14:12-07:00', u'email': u'aaron@10gen.com', u'name': u'Aaron'}

Message: SERVER-6878 Clean distinct3.js and make evalb.js more robust.
Branch: master
https://github.com/mongodb/mongo/commit/5a04bcb16bf6f4198852d3d8c2d76dfed7111880

Generated at Thu Feb 08 03:12:59 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.