[DRIVERS-379] Is it important to know whether a cursor is tailable or not? Created: 11/Apr/17  Updated: 17/Mar/20  Resolved: 04/Jun/17

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

Type: Improvement Priority: Major - P3
Reporter: Matt Broadstone Assignee: Matt Broadstone
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The following question came up as part of a scoping discussion for the upcoming Notification API feature:

Do drivers need to do anything special to understand that the cursors coming
back from change notification aggregations are tailable?

Specifically: while it's important for us to distinguish a cursor's type when sending a request to the server, is it important to track that information after the cursor has been created? Are there cases where it is not good enough simply to track the presence of a non-zero cursor id on subsequent server replies?

The question arises from the fact that a TAILABLE_AWAIT cursor will be implicitly created by the addition of the new `$changeNotification` stage in an agg query, which drivers will need to accommodate as such. It is unclear whether the server should return some flag in the first response, giving the drivers a hint as to what type of cursor to create, or if we can just track the cursor id.


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