Skip to content

Commit d75d82b

Browse files
authored
DRIVERS-3556 skip affected CSOT change stream tests on 9.0+ sharded (#1962)
1 parent ea6be20 commit d75d82b

5 files changed

Lines changed: 123 additions & 3 deletions

File tree

source/client-side-operations-timeout/etc/templates/retryability-timeoutMS.yml.template

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,16 @@ tests:
9191
isTimeoutError: true
9292
- description: "operation is retried multiple times for non-zero timeoutMS - {{operation.operation_name}} on {{operation.object}}"
9393
runOnRequirements:
94+
{%- if operation.operation_name == 'createChangeStream' %}
9495
- minServerVersion: "4.3.1" # failCommand errorLabels option
96+
topologies: ["replicaset"]
97+
- minServerVersion: "4.3.1" # failCommand errorLabels option
98+
maxServerVersion: "8.99" # Skip sharded 9.0+ due to reasons noted in DRIVERS-3556.
99+
# Removing the skip may be desired in the future if this test migrates from timeoutMS to maxTimeMS. See DRIVERS-3556 for a suggested approach: add a unified test runner option to advance the config server's cluster time immediately before opening a change stream. Otherwise, existing tests using maxTimeMS < periodicNoopIntervalSecs on 9.0+ sharded clusters may unexpectedly fail with server timeouts.
100+
topologies: ["sharded"]
101+
{%- else %}
102+
- minServerVersion: "4.3.1" # failCommand errorLabels option
103+
{%- endif %}
95104
operations:
96105
- name: failPoint
97106
object: testRunner

source/client-side-operations-timeout/tests/override-operation-timeoutMS.json

Lines changed: 45 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

source/client-side-operations-timeout/tests/override-operation-timeoutMS.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,13 @@ tests:
160160
listDatabases: 1
161161
maxTimeMS: { $$exists: false }
162162
- description: "timeoutMS can be configured for an operation - createChangeStream on client"
163+
runOnRequirements:
164+
- minServerVersion: "4.4"
165+
topologies: ["replicaset"]
166+
- minServerVersion: "4.4"
167+
maxServerVersion: "8.99" # Skip sharded 9.0+ due to reasons noted in DRIVERS-3556.
168+
# Removing the skip may be desired in the future if this test migrates from timeoutMS to maxTimeMS. See DRIVERS-3556 for a suggested approach: add a unified test runner option to advance the config server's cluster time immediately before opening a change stream. Otherwise, existing tests using maxTimeMS < periodicNoopIntervalSecs on 9.0+ sharded clusters may unexpectedly fail with server timeouts.
169+
topologies: ["sharded"]
163170
operations:
164171
- name: failPoint
165172
object: testRunner
@@ -452,6 +459,13 @@ tests:
452459
ping: 1
453460
maxTimeMS: { $$exists: false }
454461
- description: "timeoutMS can be configured for an operation - createChangeStream on database"
462+
runOnRequirements:
463+
- minServerVersion: "4.4"
464+
topologies: ["replicaset"]
465+
- minServerVersion: "4.4"
466+
maxServerVersion: "8.99" # Skip sharded 9.0+ due to reasons noted in DRIVERS-3556.
467+
# Removing the skip may be desired in the future if this test migrates from timeoutMS to maxTimeMS. See DRIVERS-3556 for a suggested approach: add a unified test runner option to advance the config server's cluster time immediately before opening a change stream. Otherwise, existing tests using maxTimeMS < periodicNoopIntervalSecs on 9.0+ sharded clusters may unexpectedly fail with server timeouts.
468+
topologies: ["sharded"]
455469
operations:
456470
- name: failPoint
457471
object: testRunner
@@ -1028,6 +1042,13 @@ tests:
10281042
listIndexes: *collectionName
10291043
maxTimeMS: { $$exists: false }
10301044
- description: "timeoutMS can be configured for an operation - createChangeStream on collection"
1045+
runOnRequirements:
1046+
- minServerVersion: "4.4"
1047+
topologies: ["replicaset"]
1048+
- minServerVersion: "4.4"
1049+
maxServerVersion: "8.99" # Skip sharded 9.0+ due to reasons noted in DRIVERS-3556.
1050+
# Removing the skip may be desired in the future if this test migrates from timeoutMS to maxTimeMS. See DRIVERS-3556 for a suggested approach: add a unified test runner option to advance the config server's cluster time immediately before opening a change stream. Otherwise, existing tests using maxTimeMS < periodicNoopIntervalSecs on 9.0+ sharded clusters may unexpectedly fail with server timeouts.
1051+
topologies: ["sharded"]
10311052
operations:
10321053
- name: failPoint
10331054
object: testRunner

source/client-side-operations-timeout/tests/retryability-timeoutMS.json

Lines changed: 33 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

source/client-side-operations-timeout/tests/retryability-timeoutMS.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1315,6 +1315,11 @@ tests:
13151315
- description: "operation is retried multiple times for non-zero timeoutMS - createChangeStream on client"
13161316
runOnRequirements:
13171317
- minServerVersion: "4.3.1" # failCommand errorLabels option
1318+
topologies: ["replicaset"]
1319+
- minServerVersion: "4.3.1" # failCommand errorLabels option
1320+
maxServerVersion: "8.99" # Skip sharded 9.0+ due to reasons noted in DRIVERS-3556.
1321+
# Removing the skip may be desired in the future if this test migrates from timeoutMS to maxTimeMS. See DRIVERS-3556 for a suggested approach: add a unified test runner option to advance the config server's cluster time immediately before opening a change stream. Otherwise, existing tests using maxTimeMS < periodicNoopIntervalSecs on 9.0+ sharded clusters may unexpectedly fail with server timeouts.
1322+
topologies: ["sharded"]
13181323
operations:
13191324
- name: failPoint
13201325
object: testRunner
@@ -1755,6 +1760,11 @@ tests:
17551760
- description: "operation is retried multiple times for non-zero timeoutMS - createChangeStream on database"
17561761
runOnRequirements:
17571762
- minServerVersion: "4.3.1" # failCommand errorLabels option
1763+
topologies: ["replicaset"]
1764+
- minServerVersion: "4.3.1" # failCommand errorLabels option
1765+
maxServerVersion: "8.99" # Skip sharded 9.0+ due to reasons noted in DRIVERS-3556.
1766+
# Removing the skip may be desired in the future if this test migrates from timeoutMS to maxTimeMS. See DRIVERS-3556 for a suggested approach: add a unified test runner option to advance the config server's cluster time immediately before opening a change stream. Otherwise, existing tests using maxTimeMS < periodicNoopIntervalSecs on 9.0+ sharded clusters may unexpectedly fail with server timeouts.
1767+
topologies: ["sharded"]
17581768
operations:
17591769
- name: failPoint
17601770
object: testRunner
@@ -2740,6 +2750,11 @@ tests:
27402750
- description: "operation is retried multiple times for non-zero timeoutMS - createChangeStream on collection"
27412751
runOnRequirements:
27422752
- minServerVersion: "4.3.1" # failCommand errorLabels option
2753+
topologies: ["replicaset"]
2754+
- minServerVersion: "4.3.1" # failCommand errorLabels option
2755+
maxServerVersion: "8.99" # Skip sharded 9.0+ due to reasons noted in DRIVERS-3556.
2756+
# Removing the skip may be desired in the future if this test migrates from timeoutMS to maxTimeMS. See DRIVERS-3556 for a suggested approach: add a unified test runner option to advance the config server's cluster time immediately before opening a change stream. Otherwise, existing tests using maxTimeMS < periodicNoopIntervalSecs on 9.0+ sharded clusters may unexpectedly fail with server timeouts.
2757+
topologies: ["sharded"]
27432758
operations:
27442759
- name: failPoint
27452760
object: testRunner

0 commit comments

Comments
 (0)