<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:16:28 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-8073] Possible bug in primary&apos;s tracking of how up-to-date its secondaries are.</title>
                <link>https://jira.mongodb.org/browse/SERVER-8073</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;It seems possible in some cases for the optimes reported in a primary&apos;s local.slaves collection to differ from the optimes reported by replSetGetStatus.  This can cause problems if the primary tries to wait for all secondaries to be caught up in replication.&lt;/p&gt;</description>
                <environment></environment>
        <key id="60857">SERVER-8073</key>
            <summary>Possible bug in primary&apos;s tracking of how up-to-date its secondaries are.</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="3">Duplicate</resolution>
                                        <assignee username="milkie@mongodb.com">Eric Milkie</assignee>
                                    <reporter username="spencer@mongodb.com">Spencer Brody</reporter>
                        <labels>
                    </labels>
                <created>Thu, 3 Jan 2013 21:56:26 +0000</created>
                <updated>Wed, 10 Dec 2014 23:06:53 +0000</updated>
                            <resolved>Fri, 12 Apr 2013 13:42:21 +0000</resolved>
                                    <version>2.4.0-rc0</version>
                                                    <component>Replication</component>
                                        <votes>0</votes>
                                    <watches>9</watches>
                                                                                                                <comments>
                            <comment id="311934" author="milkie" created="Fri, 12 Apr 2013 13:42:21 +0000"  >&lt;p&gt;I believe this is fixed via &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-8420&quot; title=&quot;GhostSync::percolate() should refresh dead cursors with OplogReader::tailCheck()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-8420&quot;&gt;&lt;del&gt;SERVER-8420&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="283721" author="milkie" created="Thu, 7 Mar 2013 21:13:17 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-8420&quot; title=&quot;GhostSync::percolate() should refresh dead cursors with OplogReader::tailCheck()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-8420&quot;&gt;&lt;del&gt;SERVER-8420&lt;/del&gt;&lt;/a&gt; could be part of the cause here.&lt;/p&gt;</comment>
                            <comment id="283688" author="milkie" created="Thu, 7 Mar 2013 20:52:13 +0000"  >&lt;p&gt;We currently notify a primary about a secondary&apos;s oplog position via calling getMore on a query.  The secondary can&apos;t call getMore on the cursor until it has reached the last op in the prior getMore call; once getMore is received by the primary, it updates that secondary&apos;s position to be the last op in the previous getMore call by that secondary.&lt;/p&gt;

&lt;p&gt;If you have chained secondaries, they all communicate via this mechanism; the getMore chunks will quite possibly not be aligned through the chain.  This means that for a given op applied at the end of a chain, that notification might bubble up through half the chain but then stop because further up the chain we&apos;re not ready to call getMore again.  In other words, the longer the chain you have, the more that the slave tracking on the primary will be off.  However, at steady state (with no writes happening on the primary), all slaves should eventually catch up and bump their cursors up to the end of the oplog.&lt;/p&gt;

&lt;p&gt;Note that the replica set optime statuses as reported by replSetGetStatus command are populated by the heartbeats that come from each slave; this will always be accurate quantized to the heartbeat duration (every two seconds).&lt;/p&gt;

&lt;p&gt;I&apos;ve gone through the logic for percolating chained secondaries&apos; positions and I don&apos;t yet see how they could break such that they stop tracking.  However, if our local.me identifiers were conflicting, there might be ways for things to get mixed up.  There are quite a few code paths that do not log unexpected errors at default logging level.  Some of the errors are only reported at log level 2.&lt;/p&gt;

&lt;p&gt;local.me shouldn&apos;t ever be conflicting.  However, if database files were copied to a new host, it might be possible to end up with a conflicting id.  We check to see if the &apos;hostname&apos; is the same as the one recorded in local.me in order to determine if a new one needs to be generated; this check is not infallible.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="63850">SERVER-8420</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 4 Jan 2013 07:31:29 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        10 years, 44 weeks, 5 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_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>false</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ramon.fernandez@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            10 years, 44 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10000" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Old_Backport</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10000"><![CDATA[No]]></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>milkie@mongodb.com</customfieldvalue>
            <customfieldvalue>spencer@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrncwf:</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>38318</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|ht02nj:</customfieldvalue>

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