[DRIVERS-2387] Spec test "change stream resumes after StaleShardVersion" fails on server version > 6.0 Created: 12/Jul/22  Updated: 09/Sep/22  Resolved: 09/Sep/22

Status: Closed
Project: Drivers
Component/s: Change Streams
Fix Version/s: None

Type: Task Priority: Unknown
Reporter: Kaitlin Mahar Assignee: Benji Rewis (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Issue split
split to CDRIVER-4429 Spec test "change stream resumes afte... Closed
split to CSHARP-4259 Spec test "change stream resumes afte... Closed
split to CXX-2547 Spec test "change stream resumes afte... Closed
split to GODRIVER-2494 Spec test "change stream resumes afte... Closed
split to MOTOR-996 Spec test "change stream resumes afte... Closed
split to NODE-4434 Spec test "change stream resumes afte... Closed
split to PHPLIB-914 Spec test "change stream resumes afte... Closed
split to PYTHON-3358 Spec test "change stream resumes afte... Closed
split to RUBY-3053 Spec test "change stream resumes afte... Closed
split to RUST-1412 Spec test "change stream resumes afte... Closed
split to JAVA-4680 Spec test "change stream resumes afte... Closed
Problem/Incident
is caused by SERVER-63327 Remove usages of the StaleShardVersio... Closed
is caused by SERVER-64449 Get rid of the StaleShardVersion exce... Closed
Related
related to DRIVERS-2392 Test that StaleConfig errors are resu... Backlog
Driver Changes: Needed
Downstream Changes Summary:

Drivers should sync their change-streams-resume-errorLabels spec test file to this commit: https://github.com/mongodb/specifications/commit/8d897ad01f8c600ddaef139740d5b68fd2950c0e.

We now skip the StaleShardVersion resumability test on 6.1+, as the error has been removed by the server and is therefore no longer marked as resumable.

Driver Compliance:
Key Status/Resolution FixVersion
CDRIVER-4429 Fixed 1.22.1
CXX-2547 Fixed 3.7.0
CSHARP-4259 Fixed 2.18.0
GODRIVER-2494 Done
JAVA-4680 Fixed 4.8.0
NODE-4434 Fixed 4.9.0
MOTOR-996 Duplicate
PYTHON-3358 Fixed 3.13, 4.3
PHPLIB-914 Fixed 1.15.0
RUBY-3053 Fixed 2.18.1
RUST-1412 Fixed 2.4.0
SWIFT-1604 Fixed 1.4.0

 Description   

Summary

The change streams spec test "change stream resumes after StaleShardVersion" here has started failing against server latest because the StaleShardVersion error has been obsoleted as of SERVER-63327 / SERVER-64449. It seems as part of this change the server no longer attaches the ResumableChangeStreamError label and therefore the driver does not consider the error retryable, meaning the resume process is not attempted and the test fails.

According to SERVER-64449 this error is obsoleted by StaleConfig. We do include StaleConfig in the change streams spec list of resumable errors, however we do not seem to have any tests around it. We could just update this test to use StaleConfig instead, or alternatively update this test to run on only <= 6.0 and add a new test using StaleConfig that runs on all server versions.

Is this issue urgent?

Drivers can skip the failing test for now but it would be good to make this small change sooner rather than later so we don't lose coverage.

Is this ticket required by a downstream team?

No.

Is this ticket only for tests?

Just testing updates.



 Comments   
Comment by Githook User [ 21/Jul/22 ]

Author:

{'name': 'Benjamin Rewis', 'email': '32186188+benjirewis@users.noreply.github.com', 'username': 'benjirewis'}

Message: DRIVERS-2387 Skip StaleShardVersion resume test on >= 6.1 (#1276)
Branch: master
https://github.com/mongodb/specifications/commit/8d897ad01f8c600ddaef139740d5b68fd2950c0e

Comment by Benji Rewis (Inactive) [ 20/Jul/22 ]

https://github.com/mongodb/specifications/pull/1276

Generated at Thu Feb 08 08:25:27 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.