[SERVER-26980] Allow maxStalenessSeconds values as small as 40 Created: 10/Nov/16  Updated: 06/Dec/22  Resolved: 29/Dec/16

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: 3.4.0-rc3
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: A. Jesse Jiryu Davis Assignee: [DO NOT USE] Backlog - Sharding Team
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-26927 Update Max Staleness implementation Closed
Assigned Teams:
Sharding
Participants:

 Description   

mongos 3.4 adheres to the original Max Staleness Spec, which said that maxStalenessSeconds must be at least twice heartbeatFrequencyMS. mongos's replica set monitoring period is 30 seconds (right?) that means its smallest maxStalenessSeconds is 60.

Update for a recent change to the Max Staleness Spec: maxStalenessSeconds must be at least heartbeatFrequencyMS + idleWritePeriodMillis, which are 30 and 10 seconds. Therefore the smallest maxStalenessSeconds is 40.



 Comments   
Comment by Andy Schwerin [ 29/Dec/16 ]

The spec changed since this ticket was filed, and the minimum supported value is 90 seconds.

Comment by A. Jesse Jiryu Davis [ 10/Nov/16 ]

A driver can do 10.5 if you turn down heartbeatFrequencyMS to 500ms, because maxStalenessSeconds must be at least heartbeatFrequencyMS + idleWritePeriodMillis (10 seconds).

A mongos can do 40, since its heartbeat is 30 seconds, not configurable, and maxStalenessSeconds must be at least heartbeatFrequencyMS + idleWritePeriodMillis (10 seconds).

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