summaryrefslogtreecommitdiff
path: root/src/mongo/shell/utils.js
diff options
context:
space:
mode:
authorjannaerin <golden.janna@gmail.com>2018-09-10 12:43:56 -0400
committerjannaerin <golden.janna@gmail.com>2018-11-15 12:10:02 -0500
commitdbafa9a288019008fd7a4ac975c298ec0bf40534 (patch)
tree78e09249619177a53d2b2780b98b86916c2d4f7a /src/mongo/shell/utils.js
parent866d4ba84171d7cc88876e2d0d8ae4eeb04ff019 (diff)
downloadmongo-dbafa9a288019008fd7a4ac975c298ec0bf40534.tar.gz
SERVER-36311 Add stepdowns, crashes, and shutdowns to replica_sets_multi_stmt_txn_jscore_passthrough suite
Diffstat (limited to 'src/mongo/shell/utils.js')
-rw-r--r--src/mongo/shell/utils.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/mongo/shell/utils.js b/src/mongo/shell/utils.js
index a98de90cdc1..af36ccca030 100644
--- a/src/mongo/shell/utils.js
+++ b/src/mongo/shell/utils.js
@@ -82,6 +82,35 @@ function isNetworkError(error) {
return networkErrs.some(err => error.message.includes(err));
}
+function isRetryableError(error) {
+ const retryableErrors = [
+ "Interrupted",
+ "InterruptedAtShutdown",
+ "InterruptedDueToStepDown",
+ "ExceededTimeLimit",
+ "MaxTimeMSExpired",
+ "CursorKilled",
+ "LockTimeout",
+ "ShutdownInProgress",
+ "HostUnreachable",
+ "HostNotFound",
+ "NetworkTimeout",
+ "SocketException",
+ "NotMaster",
+ "NotMasterNoSlaveOk",
+ "NotMasterOrSecondary",
+ "InterruptedDueToStepDown",
+ "PrimarySteppedDown",
+ "WriteConcernFailed",
+ "WriteConcernLegacyOK",
+ "UnknownReplWriteConcern",
+ "UnsatisfiableWriteConcern"
+ ];
+
+ // See if any of the known network error strings appear in the given message.
+ return retryableErrors.some(err => error.message.includes(err));
+}
+
// Please consider using bsonWoCompare instead of this as much as possible.
friendlyEqual = function(a, b) {
if (a == b)
@@ -318,6 +347,9 @@ jsTestOptions = function() {
mqlTestFile: TestData.mqlTestFile,
mqlRootPath: TestData.mqlRootPath,
disableImplicitSessions: TestData.disableImplicitSessions || false,
+ setSkipShardingPartsOfPrepareTransactionFailpoint:
+ TestData.setSkipShardingPartsOfPrepareTransactionFailpoint || false,
+ retryingOnNetworkError: TestData.retryingOnNetworkError,
});
}
return _jsTestOptions;