[SERVER-35190] resmoke.py runs lists of tests in alphabetical order by default Created: 23/May/18  Updated: 29/Oct/23  Resolved: 31/May/18

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: 3.6.0-rc0
Fix Version/s: 3.6.6, 4.0.0-rc2, 4.1.1

Type: Bug Priority: Major - P3
Reporter: Randolph Tan Assignee: Jonathan Abrahams
Resolution: Fixed Votes: 0
Labels: tig-resmoke
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Problem/Incident
is caused by SERVER-30980 Add support for more complex tag matc... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v4.0, v3.6
Steps To Reproduce:

python buildscripts/resmoke.py jstests/core/all2.js jstests/core/all.js | grep "js_test:"

shows the all.js test running before the all2.js test despite them ordered in the reverse on the command line.

Sprint: TIG 2018-06-18
Participants:
Story Points: 2

 Comments   
Comment by Githook User [ 31/May/18 ]

Author:

{'username': 'hptabster', 'name': 'Jonathan Abrahams', 'email': 'jonathan@mongodb.com'}

Message: SERVER-35190 resmoke.py runs lists of tests in alphabetical order by default

(cherry picked from commit 7d90be2b5bd9ed448f0b39d4ec9fd9402e96c8ff)
Branch: v3.6
https://github.com/mongodb/mongo/commit/7677a37e127f0a56f5bccfb2eda96932dda858eb

Comment by Githook User [ 31/May/18 ]

Author:

{'username': 'hptabster', 'name': 'Jonathan Abrahams', 'email': 'jonathan@mongodb.com'}

Message: SERVER-35190 resmoke.py runs lists of tests in alphabetical order by default

(cherry picked from commit 7d90be2b5bd9ed448f0b39d4ec9fd9402e96c8ff)
Branch: v4.0
https://github.com/mongodb/mongo/commit/f996f01849401463b25bd958231cf2cdaf653c7c

Comment by Githook User [ 31/May/18 ]

Author:

{'username': 'hptabster', 'name': 'Jonathan Abrahams', 'email': 'jonathan@mongodb.com'}

Message: SERVER-35190 resmoke.py runs lists of tests in alphabetical order by default
Branch: master
https://github.com/mongodb/mongo/commit/7d90be2b5bd9ed448f0b39d4ec9fd9402e96c8ff

Comment by Yves Duhem [ 23/May/18 ]

max.hirschhorn, there is no reason for _tags_from_list() to return an empty list when the option was not specified. It should return None.

Comment by Max Hirschhorn [ 23/May/18 ]

The _tags_from_list() function returns an empty list when the tags_list parameter is None. However, the config.ORDER_TESTS_BY_NAME setting is determined based on whether config.EXCLUDE_WITH_ANY_TAGS or config.INCLUDE_WITH_ANY_TAGS are None and not an empty list.

yves.duhem, it looks like the changes from 02e1ac9 as part of SERVER-30980 made it so resmoke.py no longer preserves the order of files specified on the command. Do you recall why there was a change to use an empty list as the value when the --excludeWithAnyTags or --includeWithAnyTags command line options weren't specified at all?

Generated at Thu Feb 08 04:39:05 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.