[SERVER-30800] 'invalidate' changeStream entries should always have a null _id Created: 23/Aug/17  Updated: 24/Aug/17  Resolved: 24/Aug/17

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Spencer Brody (Inactive) Assignee: Siyuan Zhou
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Sprint: Repl 2017-09-11
Participants:

 Description   

Since it's not valid to resume after an 'invalidate' change stream entry, those entries shouldn't return a ResumeToken at all. Instead their _id should always be an explicit null so it's clear that it's not safe to resume after them.



 Comments   
Comment by Spencer Brody (Inactive) [ 24/Aug/17 ]

We need the resumeToken to come back from shards to mongos so mongos can merge the invalidate entry into the proper place in the changestream. We could keep it there for shard mongod->mongos but have mongos and unsharded mongods strip it out, but that's probably more work than is worthwhile for this. We will leave the _id for invalidate as it is for now and trust drivers to never try to resume after an invalidate.

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