[CSHARP-3957] Ignore read preference for $out/$merge on secondaries if any servers are pre-5.0 Created: 08/Nov/21  Updated: 06/Jan/22  Resolved: 06/Jan/22

Status: Closed
Project: C# Driver
Component/s: None
Affects Version/s: None
Fix Version/s: 2.15.0

Type: Improvement Priority: Major - P3
Reporter: PM Bot Assignee: Robert Stam
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Issue split
split from DRIVERS-1969 Ignore read preference for $out/$merg... Closed
Quarter: FY22Q4
Upstream Changes Summary:

DRIVERS-1969:
In mongodb/specifications@747b748, the rules were applying a read preference for aggregations using $out and $merge was changed. Previously, drivers were instructed to attempt using the read preference and only fall back to a primary if a pre-5.0 secondary was selected.

This was changed to require drivers to always disregard the read preference if there is any evidence of a pre-5.0 server. If there are either no available servers or all servers are 5.0+ (or load balanced, where we assume 5.0+), drivers can utilize the read preference.

Spec tests have not been changed, as this clarification really only changes behavior for mixed version clusters or a replica set consisting of a single pre-5.0 primary, neither of which are tested.

Backwards Compatibility: Fully Compatible

 Description   

This ticket was split from DRIVERS-1969, please see that ticket for a detailed description.



 Comments   
Comment by Robert Stam [ 07/Dec/21 ]

This work is included in the work for CSHARP-3397, which is in code review.

Temporarily putting this ticket in code review to track that the work is done even though it is done as part of a different ticket.

This ticket can be closed when CSHARP-3397 is closed.

Comment by Robert Stam [ 17/Nov/21 ]

This requirement is included in the work for CSHARP-3397.

Generated at Wed Feb 07 21:46:47 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.