-
Type: Task
-
Resolution: Unresolved
-
Priority: Unknown
-
None
-
Component/s: CSOT
-
None
-
Needed
-
Summary
The CSOT test "Non-tailable cursor lifetime remaining timeoutMS applied to getMore if timeoutMode is unset" asserts that cursor "getMore" commands should include "maxTimeMS". However, the server returns the following error if drivers send "getMore" with "maxTimeMS":
(BadValue) cannot set maxTimeMS on getMore command for a non-awaitData cursor
The only time a "getMore" can include "maxTimeMS" is for a tailable awaitData cursor. The test bug is masked because the test case expects a timeout on "getMore", preventing the driver from receiving the server error.
Motivation
Who is the affected end user?
Drivers engineers.
How does this affect the end user?
Drivers engineers may implement CSOT behavior that will prevent cursors from working correctly.
How likely is it that this problem or use case will occur?
Very likely. Drivers engineers who implement CSOT behavior that passes the spec test will unintentionally create a major bug in their driver.
If the problem does occur, what are the consequences and how severe are they?
Drivers teams may ship a driver with CSOT features that make cursors unusable in some circumstances.
Is this issue urgent?
No.
Is this ticket required by a downstream team?
No.
Is this ticket only for tests?
Yes.
Acceptance Criteria
- Remove "maxTimeMS" from the "getMore" command started event in the test "Non-tailable cursor lifetime remaining timeoutMS applied to getMore if timeoutMode is unset".
- Add a test, or modify the above test, to assert that iterating cursors works correctly when CSOT is enabled.
- split to
-
CDRIVER-5789 Fix bug in CSOT runCursorCommand test
- Backlog
-
CSHARP-5393 Fix bug in CSOT runCursorCommand test
- Backlog
-
CXX-3162 Fix bug in CSOT runCursorCommand test
- Backlog
-
GODRIVER-3411 Fix bug in CSOT runCursorCommand test
- Backlog
-
JAVA-5685 Fix bug in CSOT runCursorCommand test
- Backlog
-
PYTHON-4939 Fix bug in CSOT runCursorCommand test
- Backlog
-
RUBY-3583 Fix bug in CSOT runCursorCommand test
- Backlog
-
MOTOR-1403 Fix bug in CSOT runCursorCommand test
- Closed
-
NODE-6493 Fix bug in CSOT runCursorCommand test
- Closed
-
PHPLIB-1581 Fix bug in CSOT runCursorCommand test
- Closed
-
RUST-2086 Fix bug in CSOT runCursorCommand test
- Closed