diff options
Diffstat (limited to 'jstests/libs/parallelTester.js')
-rw-r--r-- | jstests/libs/parallelTester.js | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/jstests/libs/parallelTester.js b/jstests/libs/parallelTester.js index 25ac95e6894..e858f14bbd3 100644 --- a/jstests/libs/parallelTester.js +++ b/jstests/libs/parallelTester.js @@ -383,11 +383,19 @@ if (typeof _threadInject != "undefined") { for (var i in params) { var param = params[i]; var test = param.shift(); + + // Make a shallow copy of TestData so we can override the test name to + // prevent tests on different threads that to use jsTestName() as the + // collection name from colliding. + const clonedTestData = Object.assign({}, TestData); + clonedTestData.testName = `ParallelTesterThread${i}`; + var t; if (newScopes) - t = new ScopedThread(wrapper, test, param, {TestData: TestData}); + t = new ScopedThread(wrapper, test, param, {TestData: clonedTestData}); else - t = new Thread(wrapper, test, param, {TestData: TestData}); + t = new Thread(wrapper, test, param, {TestData: clonedTestData}); + runners.push(t); } |