From eee4362074775ebd142cfd671dcca312ddc31fe2 Mon Sep 17 00:00:00 2001 From: Ben Caimano Date: Mon, 15 Mar 2021 17:58:29 +0000 Subject: SERVER-55171 Add $config.teardown to auth_privilege_cache_miss.js --- .../fsm_workloads/auth_privilege_cache_miss.js | 29 ++++++++++++++++++---- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/jstests/concurrency/fsm_workloads/auth_privilege_cache_miss.js b/jstests/concurrency/fsm_workloads/auth_privilege_cache_miss.js index 54f9bd23697..5441a21ed49 100644 --- a/jstests/concurrency/fsm_workloads/auth_privilege_cache_miss.js +++ b/jstests/concurrency/fsm_workloads/auth_privilege_cache_miss.js @@ -17,10 +17,31 @@ var $config = extendWorkload($config, function($config, $super) { const kResolveRolesDelayMS = 100; const originalSetup = $config.setup; + const originalTeardown = $config.teardown; + $config.setup = function(db, collName, cluster) { originalSetup(db, collName, cluster); const cacheBypass = {configureFailPoint: 'authUserCacheBypass', mode: 'alwaysOn'}; + const getUser = { + configureFailPoint: 'authLocalGetUser', + mode: 'alwaysOn', + data: {resolveRolesDelayMS: NumberInt(kResolveRolesDelayMS)} + }; + + cluster.executeOnMongosNodes(function(nodeAdminDB) { + assert.commandWorked(nodeAdminDB.runCommand(cacheBypass)); + }); + + cluster.executeOnMongodNodes(function(nodeAdminDB) { + assert.commandWorked(nodeAdminDB.runCommand(cacheBypass)); + assert.commandWorked(nodeAdminDB.runCommand(getUser)); + }); + }; + + $config.teardown = function(db, collName, cluster) { + const cacheBypass = {configureFailPoint: 'authUserCacheBypass', mode: 'off'}; + const getUser = {configureFailPoint: 'authLocalGetUser', mode: 'off'}; cluster.executeOnMongosNodes(function(nodeAdminDB) { assert.commandWorked(nodeAdminDB.runCommand(cacheBypass)); @@ -28,12 +49,10 @@ var $config = extendWorkload($config, function($config, $super) { cluster.executeOnMongodNodes(function(nodeAdminDB) { assert.commandWorked(nodeAdminDB.runCommand(cacheBypass)); - assert.commandWorked(nodeAdminDB.runCommand({ - configureFailPoint: 'authLocalGetUser', - mode: 'alwaysOn', - data: {resolveRolesDelayMS: NumberInt(kResolveRolesDelayMS)} - })); + assert.commandWorked(nodeAdminDB.runCommand(getUser)); }); + + originalTeardown(db, collName, cluster); }; return $config; -- cgit v1.2.1