<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:01:44 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-42906] lastCommitted wall clock time can be greater than lastApplied wall clock time on the primary</title>
                <link>https://jira.mongodb.org/browse/SERVER-42906</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;There are certain workloads that trigger a situation where the reported lastCommitted wall clock time is greater than the reported lastApplied wall clock time on the primary. There were no elections during this time.&lt;/p&gt;</description>
                <environment></environment>
        <key id="900465">SERVER-42906</key>
            <summary>lastCommitted wall clock time can be greater than lastApplied wall clock time on the primary</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="13202">Works as Designed</resolution>
                                        <assignee username="backlog-server-repl">Backlog - Replication Team</assignee>
                                    <reporter username="maria.vankeulen@mongodb.com">Maria van Keulen</reporter>
                        <labels>
                    </labels>
                <created>Mon, 19 Aug 2019 20:45:55 +0000</created>
                <updated>Fri, 27 Oct 2023 13:53:07 +0000</updated>
                            <resolved>Wed, 21 Aug 2019 18:49:42 +0000</resolved>
                                                                    <component>Replication</component>
                                        <votes>0</votes>
                                    <watches>10</watches>
                                                                                                                <comments>
                            <comment id="2381392" author="maria.vankeulen" created="Wed, 21 Aug 2019 18:12:58 +0000"  >&lt;p&gt;For those interested, Matthew and I discussed the bulk insert scenario further, and the following description clarified things for me:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;So consider a bulk insert.  We assign optimes 1-20 up front.  Then we go through and log the inserts, assigning the wall times as we log them.  Someone else does a single insert while this is happening.  It gets an optime of 21, and a wall time somewhere in the middle.&lt;/p&gt;&lt;/blockquote&gt;</comment>
                            <comment id="2381235" author="maria.vankeulen" created="Wed, 21 Aug 2019 16:56:59 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=judah.schvimer&quot; class=&quot;user-hover&quot; rel=&quot;judah.schvimer&quot;&gt;judah.schvimer&lt;/a&gt; Yes, Flow Control handles this as part of &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-42917&quot; title=&quot;Flow Control should disregard faulty wall clock time readings during lag calculation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-42917&quot;&gt;&lt;del&gt;SERVER-42917&lt;/del&gt;&lt;/a&gt;. It&apos;s fine to keep the patch for &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-42917&quot; title=&quot;Flow Control should disregard faulty wall clock time readings during lag calculation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-42917&quot;&gt;&lt;del&gt;SERVER-42917&lt;/del&gt;&lt;/a&gt; if &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-42906&quot; title=&quot;lastCommitted wall clock time can be greater than lastApplied wall clock time on the primary&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-42906&quot;&gt;&lt;del&gt;SERVER-42906&lt;/del&gt;&lt;/a&gt; works as designed.&lt;/p&gt;</comment>
                            <comment id="2381222" author="judah.schvimer" created="Wed, 21 Aug 2019 16:52:12 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=matthew.russotto&quot; class=&quot;user-hover&quot; rel=&quot;matthew.russotto&quot;&gt;matthew.russotto&lt;/a&gt;, great point! This seems to be &quot;Works As Designed&quot; then. I think synchronizing wall clock time generation with oplog entry generation would be too much to add to a hot code path.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=maria.vankeulen&quot; class=&quot;user-hover&quot; rel=&quot;maria.vankeulen&quot;&gt;maria.vankeulen&lt;/a&gt; and &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=milkie&quot; class=&quot;user-hover&quot; rel=&quot;milkie&quot;&gt;milkie&lt;/a&gt;, is this something flow control can work around?&lt;/p&gt;</comment>
                            <comment id="2379629" author="milkie" created="Tue, 20 Aug 2019 19:30:04 +0000"  >&lt;p&gt;Ah but we&apos;re talking about the wall-clock times assigned to these oplog entries, and since the last committed calculation never looks at those values, it&apos;s entirely possible for them to be out of order, due to clock skew.  I see what you&apos;re saying now.&lt;/p&gt;</comment>
                            <comment id="2379606" author="milkie" created="Tue, 20 Aug 2019 19:18:31 +0000"  >&lt;p&gt;By &quot;wall time commit point&quot; do you mean last applied?&lt;br/&gt;
We have gone back and forth on whether to make last applied monotonically increasing or have it jump around and have consumers deal with it.  But I don&apos;t see a reason, even if it moves backward, to ever go behind the last committed value, because we calculate the last committed value based on oplog visibility (what&apos;s visible), and cannot go past uncommitted holes, even if the last applied time ignores holes.&lt;/p&gt;</comment>
                            <comment id="2379593" author="matthew.russotto" created="Tue, 20 Aug 2019 19:06:54 +0000"  >&lt;p&gt;I think this may actually be normal.  The wall clock time is assigned when we log the oplog entry.  The optime may be assigned then, or it may have been reserved earlier (e.g. for bulk inserts and collection creation).   The entries will be ordered by optime, and the commit point advances by optime, so it is entirely possible for the wall time commit point to go backwards or to be ahead of the last committed optime, even on the primary.&lt;/p&gt;</comment>
                            <comment id="2379123" author="maria.vankeulen" created="Tue, 20 Aug 2019 15:28:49 +0000"  >&lt;p&gt;I&apos;ve filed &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-42917&quot; title=&quot;Flow Control should disregard faulty wall clock time readings during lag calculation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-42917&quot;&gt;&lt;del&gt;SERVER-42917&lt;/del&gt;&lt;/a&gt; to address this issue at the Flow Control level until the underlying cause is addressed. The work for &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-42906&quot; title=&quot;lastCommitted wall clock time can be greater than lastApplied wall clock time on the primary&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-42906&quot;&gt;&lt;del&gt;SERVER-42906&lt;/del&gt;&lt;/a&gt; should include undoing the fix from &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-42917&quot; title=&quot;Flow Control should disregard faulty wall clock time readings during lag calculation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-42917&quot;&gt;&lt;del&gt;SERVER-42917&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="2378027" author="maria.vankeulen" created="Mon, 19 Aug 2019 21:19:57 +0000"  >&lt;p&gt;Assigning this to Replication to investigate.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="901153">SERVER-42917</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="227712" name="Screen Shot 2019-08-19 at 4.48.14 PM.png" size="143212" author="maria.vankeulen@mongodb.com" created="Mon, 19 Aug 2019 20:51:55 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25128"><![CDATA[Replication]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 20 Aug 2019 19:06:54 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 25 weeks 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_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>
                            4 years, 25 weeks ago
                        </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>backlog-server-repl</customfieldvalue>
            <customfieldvalue>milkie@mongodb.com</customfieldvalue>
            <customfieldvalue>judah.schvimer@mongodb.com</customfieldvalue>
            <customfieldvalue>maria.vankeulen@mongodb.com</customfieldvalue>
            <customfieldvalue>matthew.russotto@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hvlr2f:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hvakov:</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|hvldbr:</customfieldvalue>

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