-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: Test Failure, Test Improvement
-
None
-
Java Drivers
Objective: Investigate if unified reactive ChangeStream tests can be made to comply with unified JSON commands order, avoiding race conditions.
Background: Race conditions occur when executing an aggregate command followed immediately by getMore commands, leading to test failures in the "expected events" stage.
Partial Workaround: There is a partial workaround implemented in JAVA-5356 . This approach waits for the BatchCursor creation or catches errors if the creation fails. However, it does not address the issue: it does not suspend operations after an aggregate command until "next" or "hasNext" is called on SyncMongoCursor.
Required Investigation:
- Determine if it's feasible to enforce command order/a pause in reactive streams post-aggregate operation until a specific trigger (like "next" or "hasNext") in SyncMongoCursor.
- depends on
-
JAVA-5356 Eliminate racy behavior in unified reactive change stream tests
- Closed