[SERVER-83461] Pipeline::canRunOnMongos triggers invariant failure because targeting answer differs from AggregationTargeter::make() Created: 20/Nov/23  Updated: 28/Nov/23  Resolved: 28/Nov/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 7.3.0-rc0, 7.2.0-rc2

Type: Bug Priority: Major - P3
Reporter: Mihai Andrei Assignee: Romans Kasperovics
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
Related
related to SERVER-83614 $queue/$lookup pipeline can throw if ... Closed
Assigned Teams:
Query Execution
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v7.2
Sprint: QE 2023-11-27, QE 2023-12-11
Participants:
Linked BF Score: 135

 Comments   
Comment by Githook User [ 28/Nov/23 ]

Author:

{'name': 'rakiz', 'email': 'sebastien.mendez@mongodb.com', 'username': 'rakiz'}

Message: SERVER-83461 Crash->throw on requiredToRunOnMongos/canRunOnMongos conflict

Since SERVER-65534 pipelines starting with the '$queue' stage must run on
mongoS when no 'CollectionRoutingInfo' is available. This, however, can
result in an invariant failure, because some pipelines starting with the
'$queue' stage may still not be allowed to run on mongoS.

In this fix we replace the invariant with a 'uassert', which was already
there, but did not cover the case introduced in SERVER-65534.
Branch: master
https://github.com/mongodb/mongo/commit/214fe871cc32544cbc63f1d85ff9ca8c785bcc78

Generated at Thu Feb 08 06:52:15 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.