[DOCS-14251] Investigate changes in SERVER-54278: Add feature flag to disable Opportunistic Reads by default Created: 24/Feb/21  Updated: 13/Nov/23  Due: 26/Feb/21  Resolved: 26/Feb/21

Status: Closed
Project: Documentation
Component/s: manual, Server
Affects Version/s: None
Fix Version/s: 4.2.13, Server_Docs_20231030, Server_Docs_20231106, Server_Docs_20231105, Server_Docs_20231113

Type: Task Priority: Major - P3
Reporter: Backlog - Core Eng Program Management Team Assignee: Andrew Feierabend (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Documented
documents SERVER-54278 Add feature flag to disable Opportuni... Closed
Participants:
Days since reply: 2 years, 46 weeks, 5 days ago
Epic Link: DOCSP-11344
Story Points: 2

 Description   

Description

Downstream Change Summary

This ticket disables opportunistic read targeting by default, and introduces a new server parameter, "opportunisticSecondaryTargeting", to enable this feature.

Description of Linked Ticket

Opportunistic reads against replica-sets was originally introduced in v4.2 as part of PM-856. This feature allows mongos to direct secondary reads to any secondary with an active connection, instead of waiting for a new connection to a specific secondary.

Under certain workloads, as described in SERVER-53853, opportunistic reads may trigger construction of unnecessary connections to mongod processes, which would regress the overall performance.

This ticket should introduce a new feature flag to disable opportunistic reads in v4.2 by default. In particular, the following tickets from PM-856 introduce new functionality that we might want to guard with the feature flag: SERVER-41132, SERVER-41133, and SERVER-41134.

We may wan to approach this ticket from this for loop, introduced by SERVER-41133 (see excerpt below).

// Attempt to get a connection to every target host
for (size_t idx = 0; idx < request.target.size() && !cmdState->finishLine.isReady(); ++idx) {
    auto connFuture = _pool->get(request.target[idx], request.sslMode, request.timeout);
    ...
}

Scope of changes

Impact to Other Docs

MVP (Work and Date)

Resources (Scope or Design Docs, Invision, etc.)



 Comments   
Comment by Githook User [ 19/Mar/21 ]

Author:

{'name': 'Andrew Feierabend', 'email': 'andrew.feierabend@mongodb.com', 'username': 'andf-mongodb'}

Message: DOCS-14251 add opportunisticSecondaryTargeting v4.2 only
Branch: v4.2
https://github.com/mongodb/docs/commit/ef68c4ecf7162a48fff581eda96c026383c76b0d

Comment by Githook User [ 26/Feb/21 ]

Author:

{'name': 'Andrew Feierabend', 'email': 'andrew.feierabend@mongodb.com', 'username': 'andf-mongodb'}

Message: DOCS-14251 add opportunisticSecondaryTargeting v4.2 only
Branch: v4.2.13
https://github.com/mongodb/docs/commit/5f1b833ec95a22f18696d72383bfcc50693e07ab

Comment by Andrew Feierabend (Inactive) [ 25/Feb/21 ]

Thank you!!

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