<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:31:10 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>[SERVER-53523] Do not use stale VectorClock on FCV 4.4</title>
                <link>https://jira.mongodb.org/browse/SERVER-53523</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Starting from binary version 4.7, the configTime component of the VectorClock is used both for &lt;a href=&quot;https://github.com/mongodb/mongo/blob/d05fa5f9384b09061f68ddbb0b6023bc44bded79/src/mongo/s/grid.cpp#L140-L149&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;readPreference&lt;/a&gt; and &lt;a href=&quot;https://github.com/mongodb/mongo/blob/d05fa5f9384b09061f68ddbb0b6023bc44bded79/src/mongo/s/grid.cpp#L124-L135&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;readConcern&lt;/a&gt; on read operations sent to the configServer.&lt;/p&gt;

&lt;p&gt;On the other hand &lt;a href=&quot;https://github.com/mongodb/mongo/blob/d05fa5f9384b09061f68ddbb0b6023bc44bded79/src/mongo/db/vector_clock.cpp#L325-L327&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;nodes with FCV &amp;lt;= 4.4 are not gossiping this component of the vector clock.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So as soon as the FCV 4.4 is set on the cluster we can&apos;t rely anymore on the vector clock and we should rather use &lt;a href=&quot;https://github.com/mongodb/mongo/blob/d05fa5f9384b09061f68ddbb0b6023bc44bded79/src/mongo/s/grid.cpp#L155-L160&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;the old configOpTime stored in the Grid&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;While shards are correctly relying on &lt;tt&gt;Grid::configOpTime()&lt;/tt&gt; when the FCV is set thanks to &lt;a href=&quot;https://github.com/mongodb/mongo/blob/2f8c0125a4c0f58db96e8f9abe35695df054499a/src/mongo/s/grid.cpp#L51-L55&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;this check&lt;/a&gt;, routers have no knowledge of FCV so the check will always pass and the last known VectorClock&apos;s configTime is going to be used (if greater than zero).&lt;/p&gt;

&lt;p&gt;These are two possible solutions I was thinking about:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Use always the maximum between the old configOpTime and the new VectorClock&lt;span class=&quot;error&quot;&gt;&amp;#91;configTime&amp;#93;&lt;/span&gt; until we completely get rid of the former (v5.1). This should be a quick fix.&lt;/li&gt;
	&lt;li&gt;Use always the old configOpTime until we can completely switch to the new VectorClock&lt;span class=&quot;error&quot;&gt;&amp;#91;configTime&amp;#93;&lt;/span&gt;&#160; (v5.1). Also this one is a quick one. Actually I&apos;m not sure why we already started using the new VectorClock&lt;span class=&quot;error&quot;&gt;&amp;#91;configTime&amp;#93;&lt;/span&gt; if it is still unreliable.&lt;/li&gt;
	&lt;li&gt;Update the VectorClock&lt;span class=&quot;error&quot;&gt;&amp;#91;configTime&amp;#93;&lt;/span&gt; every time the old configOpTime is advanced. Also this should be quick one but it requires to mess a bit the code of the VectorClock.&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="1577475">SERVER-53523</key>
            <summary>Do not use stale VectorClock on FCV 4.4</summary>
                <type id="1" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14703&amp;avatarType=issuetype">Bug</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="13201">Fixed</resolution>
                                        <assignee username="tommaso.tocci@mongodb.com">Tommaso Tocci</assignee>
                                    <reporter username="tommaso.tocci@mongodb.com">Tommaso Tocci</reporter>
                        <labels>
                            <label>sharding-wfbf-day</label>
                    </labels>
                <created>Thu, 24 Dec 2020 13:18:46 +0000</created>
                <updated>Sun, 29 Oct 2023 21:59:14 +0000</updated>
                            <resolved>Fri, 1 Jan 2021 12:22:47 +0000</resolved>
                                    <version>4.7.0</version>
                                    <fixVersion>4.9.0</fixVersion>
                                    <component>Sharding</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="3547901" author="ian@10gen.com" created="Mon, 4 Jan 2021 21:58:53 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;evrg-bot-webhook&apos;, &apos;name&apos;: u&apos;Tommaso Tocci&apos;, &apos;email&apos;: u&apos;tommaso.tocci@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-53523&quot; title=&quot;Do not use stale VectorClock on FCV 4.4&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-53523&quot;&gt;&lt;del&gt;SERVER-53523&lt;/del&gt;&lt;/a&gt; Do not use stale VectorClock on FCV 4.4&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/c3cb41d5d88308632d2da0c3f0d047487c3b66c3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/c3cb41d5d88308632d2da0c3f0d047487c3b66c3&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3545690" author="tommaso.tocci" created="Fri, 1 Jan 2021 12:21:56 +0000"  >&lt;p&gt;Commit: &lt;a href=&quot;https://github.com/mongodb/mongo/commit/c3cb41d5d88308632d2da0c3f0d047487c3b66c3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/c3cb41d5d88308632d2da0c3f0d047487c3b66c3&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Backwards Compatibility</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10038"><![CDATA[Fully Compatible]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 4 Jan 2021 21:58:53 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        3 years, 5 weeks, 2 days ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_17050" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Downstream Team Attention</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="16941"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            3 years, 5 weeks, 2 days ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>14.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10032" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Operating System</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10026"><![CDATA[ALL]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>ian@mongodb.com</customfieldvalue>
            <customfieldvalue>tommaso.tocci@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hyndg7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hy96f3:</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_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hymzpj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>