[SERVER-31763] Post-change lookup uasserts for sharded collection on single-shard cluster Created: 30/Oct/17  Updated: 30/Oct/23  Resolved: 09/Nov/17

Status: Closed
Project: Core Server
Component/s: Aggregation Framework
Affects Version/s: None
Fix Version/s: 3.6.0-rc4

Type: Bug Priority: Major - P3
Reporter: Bernard Gorman Assignee: Bernard Gorman
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-31394 Create passthroughs of existing chang... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Query 2017-11-13
Participants:

 Description   

In cases where an aggregation on a sharded collection can be targeted to a single shard, we simply forward the pipeline to that shard and store the resulting cursor on the mongoS. Aggregations which start with $changeStream are targeted at all shards, but on a single-shard cluster this means that the entire pipeline will be forwarded, unsplit, to that shard. When we then attempt to lookup the post-change image, we hit the uassert here which prevents MongodProcessInterface from creating an internal pipeline on a collection that is sharded.



 Comments   
Comment by Githook User [ 09/Nov/17 ]

Author:

{'name': 'Bernard Gorman', 'username': 'gormanb', 'email': 'bernard.gorman@gmail.com'}

Message: SERVER-31763 $changeStream on sharded collections must always split on mongoS even if targeting a single shard
Branch: master
https://github.com/mongodb/mongo/commit/862958d49fc7c19d2d74a5e1ad25c3a5c4a4cd16

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