<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:21:18 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[DRIVERS-340] Make minimum value of maxStalenessSeconds 90 seconds</title>
                <link>https://jira.mongodb.org/browse/DRIVERS-340</link>
                <project id="10980" key="DRIVERS">Drivers</project>
                    <description>&lt;p&gt;This supersedes &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-335&quot; title=&quot; Update Max Staleness implementation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-335&quot;&gt;&lt;del&gt;DRIVERS-335&lt;/del&gt;&lt;/a&gt;. The only part of that ticket which is still relevant is:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Rename maxStalenessMS to maxStalenessSeconds&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;These parts of &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-335&quot; title=&quot; Update Max Staleness implementation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-335&quot;&gt;&lt;del&gt;DRIVERS-335&lt;/del&gt;&lt;/a&gt; are reverted:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Parse idleWritePeriodMillis from isMaster, in case a future server version ever includes it (&lt;b&gt;reverted&lt;/b&gt;, the idle write period is a 10 second constant you define in your driver code)&lt;/li&gt;
	&lt;li&gt;The maxStalenessSeconds can be a float (&lt;b&gt;reverted&lt;/b&gt;, it&apos;s an integer)&lt;/li&gt;
	&lt;li&gt;The smallest value is now heartbeatFrequencyMS + idleWritePeriodMS (&lt;b&gt;superseded&lt;/b&gt;, it must now &lt;b&gt;also&lt;/b&gt; be at least 90 seconds)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-336&quot; title=&quot;Change &amp;quot;no maxStalenessSeconds&amp;quot; value from 0 to -1&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-336&quot;&gt;&lt;del&gt;DRIVERS-336&lt;/del&gt;&lt;/a&gt; is not superseded, it&apos;s still valid: the default value for maxStalenessSeconds is -1, meaning &quot;no max staleness&quot;. maxStalenessSeconds=0 is prohibited.&lt;/p&gt;

&lt;p&gt;Now, to complete &lt;b&gt;this&lt;/b&gt; ticket:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;The smallest value for maxStalenessSeconds is now 90 seconds or heartbeatFrequencyMS + idleWritePeriodMS (10 seconds), whichever is greater.&lt;/li&gt;
	&lt;li&gt;Resync &lt;a href=&quot;https://github.com/mongodb/specifications/tree/max-staleness-tests-2016-11-22/source/max-staleness/tests&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Max Staleness JSON tests&lt;/a&gt; - they are tagged &lt;tt&gt;max-staleness-tests-2016-11-22&lt;/tt&gt;&lt;/li&gt;
	&lt;li&gt;Review &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/max-staleness/max-staleness-tests.rst&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Max Staleness prose tests&lt;/a&gt; and update your tests&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="333400">DRIVERS-340</key>
            <summary>Make minimum value of maxStalenessSeconds 90 seconds</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="rathi.gnanasekaran">Rathi Gnanasekaran</assignee>
                                    <reporter username="rathi.gnanasekaran">Rathi Gnanasekaran</reporter>
                        <labels>
                    </labels>
                <created>Mon, 21 Nov 2016 19:35:44 +0000</created>
                <updated>Fri, 25 Oct 2019 17:24:51 +0000</updated>
                            <resolved>Thu, 8 Dec 2016 21:01:44 +0000</resolved>
                                                                            <votes>0</votes>
                                    <watches>6</watches>
                                                                                                                <comments>
                            <comment id="2501324" author="daniel.hatcher" created="Fri, 25 Oct 2019 17:24:51 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=bartle&quot; class=&quot;user-hover&quot; rel=&quot;bartle&quot;&gt;bartle&lt;/a&gt;, this ticket is the result of an update to our &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/max-staleness/max-staleness.rst&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Max Staleness Specification&lt;/a&gt;. The rationale for the minimum value of 90 is explained in the subsection &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/max-staleness/max-staleness.rst#smallest-allowed-value-for-maxstalenessseconds&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Smallest allowed value for maxStalenessSeconds&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;If you still have concerns with the setting after reading our justification, would you mind creating a new DRIVERS ticket? The work on this ticket was finished in 2016 so any future work would rely on another ticket anyway.&lt;/p&gt;</comment>
                            <comment id="2500106" author="bartle" created="Thu, 24 Oct 2019 22:59:10 +0000"  >&lt;p&gt;Is there any rationale for requiring maxStalenessSeconds be at least 90s?  It&apos;s possible to tune heartbeatFrequencyMS in drivers.  It&apos;s not possible to tune idleWritePeriodMS in drivers, but it is now possible to tune periodicNoopIntervalSecs in the server, so arguably idleWritePeriodMS should be discovered (presumably isMaster would return the server value or something).&lt;/p&gt;

&lt;p&gt;Either way, if you run a replset in a single region, you&apos;re looking at milliseconds of latency and lag, so 90s is orders of magnitude away reality.&lt;/p&gt;</comment>
                            <comment id="1452764" author="rathi.gnanasekaran" created="Thu, 8 Dec 2016 21:01:44 +0000"  >&lt;p&gt;Closing ticket as all linked tickets are resolved. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="333428">CDRIVER-1933</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="333430">CSHARP-1834</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="333429">CXX-1142</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="333432">NODE-859</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="333433">PYTHON-1192</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="333434">RUBY-1178</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="668395">RUST-25</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="330179">PHPC-827</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="333307">JAVA-2389</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="330690">DRIVERS-336</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="330153">DRIVERS-335</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                            <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_23952" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Driver Compliance</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[<style type='text/css'>
         #scriptField, #scriptField *{
                border: 1px solid black;
            }

            #scriptField{
                border-collapse: collapse;
            }

            #scriptField td {
                text-align: center; /* Center-align text in table cells */
            }

            #scriptField td.key {
                text-align: left; /* Left-align text in the Key column */
            }

            #scriptField a {
                text-decoration: none; /* Remove underlines from links */
                border: none; /* Remove border from links */
            }
            
            /* Add green background color to cells with FixVersion */
            #scriptField td.hasFixVersion {
                background-color: #00FF00; /* Green color code */
            }

            /* Center-align the first row headers */
            #scriptField th {
                text-align: center;
            }
        </style>
<table id='scriptField'>
  <tr>
    <th>Key</th>
    <th>Status/Resolution</th>
    <th>FixVersion</th>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/PHPC-827'>PHPC-827</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>1.2.0</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/JAVA-2389'>JAVA-2389</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>3.4.0</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/SCALA-286'>SCALA-286</a>
    </td>
    <td>Done</td>
    <td class=''></td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/PYTHON-1192'>PYTHON-1192</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>3.4</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/NODE-859'>NODE-859</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>2.2.12</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/CDRIVER-1933'>CDRIVER-1933</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>1.5.0</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/CXX-1142'>CXX-1142</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>3.1.0</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/RUBY-1178'>RUBY-1178</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>2.4.0</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/CSHARP-1834'>CSHARP-1834</a>
    </td>
    <td>Done</td>
    <td class='hasFixVersion'>2.4</td>
  </tr>
  <tr>
    <td class='key'>
      <a href='https://jira.mongodb.org/browse/RUST-25'>RUST-25</a>
    </td>
    <td>Duplicate</td>
    <td class=''></td>
  </tr>
</table>]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hss3u7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_11150" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>SERVER fixVersion</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="12556"><![CDATA[3.4]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    </customfields>
    </item>
</channel>
</rss>