Details
-
Bug
-
Status: Backlog
-
Minor - P4
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
-
Replication
-
ALL
-
Execution Team 2021-11-29, Execution Team 2021-12-13, Execution Team 2022-01-24
-
173
Description
In some of our CI suites, the command invocation in tests is overridden to support retries. For some multi-document passthroughs, when there is a need to retry a transaction, the runCommandWithRetries() logic in implicitly_retry_on_background_op_in_progress.js and network_error_and_txn_override.js implicitly recurses into itself with the following repeating stack of function calls. This has the potential to exceed the internal recursion limit in the JS interpreter, leading to the test terminating early.
[multi_stmt_txn_passthrough:orp] retryEntireTransaction@jstests/libs/override_methods/network_error_and_txn_override.js:690:15
|
[multi_stmt_txn_passthrough:orp] retryWithTxnOverride@jstests/libs/override_methods/network_error_and_txn_override.js:753:15
|
[multi_stmt_txn_passthrough:orp] runCommandOverrideBody@jstests/libs/override_methods/network_error_and_txn_override.js:1032:23
|
[multi_stmt_txn_passthrough:orp] runCommandOverride@jstests/libs/override_methods/network_error_and_txn_override.js:1101:21
|
[multi_stmt_txn_passthrough:orp] overrideRunCommand/Mongo.prototype.runCommand@jstests/libs/override_methods/override_helpers.js:81:20
|
[multi_stmt_txn_passthrough:orp] runCommandWithRetries/<@jstests/libs/override_methods/implicitly_retry_on_background_op_in_progress.js:58:19
|
[multi_stmt_txn_passthrough:orp] assert.soon@src/mongo/shell/assert.js:366:21
|
[multi_stmt_txn_passthrough:orp] runCommandWithRetries@jstests/libs/override_methods/implicitly_retry_on_background_op_in_progress.js:54:5
|
[multi_stmt_txn_passthrough:orp] overrideRunCommand/Mongo.prototype.runCommand@jstests/libs/override_methods/override_helpers.js:81:20
|
[multi_stmt_txn_passthrough:orp] runClientFunctionWithRetries@src/mongo/shell/session.js:371:27
|
[multi_stmt_txn_passthrough:orp] runCommand@src/mongo/shell/session.js:466:25
|
[multi_stmt_txn_passthrough:orp] DB.prototype._runCommandImpl@src/mongo/shell/db.js:155:12
|
[multi_stmt_txn_passthrough:orp] DB.prototype.runCommand@src/mongo/shell/db.js:170:16
|
[multi_stmt_txn_passthrough:orp] retryEntireTransaction@jstests/libs/override_methods/network_error_and_txn_override.js:690:15
|
[multi_stmt_txn_passthrough:orp] retryWithTxnOverride@jstests/libs/override_methods/network_error_and_txn_override.js:753:15
|
[multi_stmt_txn_passthrough:orp] runCommandOverrideBody@jstests/libs/override_methods/network_error_and_txn_override.js:1032:23
|
[multi_stmt_txn_passthrough:orp] runCommandOverride@jstests/libs/override_methods/network_error_and_txn_override.js:1101:21
|
[multi_stmt_txn_passthrough:orp] overrideRunCommand/Mongo.prototype.runCommand@jstests/libs/override_methods/override_helpers.js:81:20
|
[multi_stmt_txn_passthrough:orp] runCommandWithRetries/<@jstests/libs/override_methods/implicitly_retry_on_background_op_in_progress.js:58:19
|
[multi_stmt_txn_passthrough:orp] assert.soon@src/mongo/shell/assert.js:366:21
|
[multi_stmt_txn_passthrough:orp] runCommandWithRetries@jstests/libs/override_methods/implicitly_retry_on_background_op_in_progress.js:54:5
|
|
Attachments
Issue Links
- is related to
-
SERVER-32522 set_read_and_write_concerns.js treats mapReduce "out" field like aggregation's $out stage
-
- Closed
-
-
SERVER-38937 Unify txn_override.js and auto_retry_on_network_error.js
-
- Closed
-
- related to
-
SERVER-66991 add incompatible_with_gcov to geo_near_random2.js, geo_s2sparse.js, and sample_rate.js
-
- Closed
-