<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:09:39 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-45765] Race in ReplSetTest.initiateWithAnyNodeAsPrimary</title>
                <link>https://jira.mongodb.org/browse/SERVER-45765</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;In replsettest.js, initiateWithAnyNodeAsPrimary:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Call replSetInitiate on one node with a one-node config&lt;/li&gt;
	&lt;li&gt;Call getPrimary(), which initializes self._slaves&lt;/li&gt;
	&lt;li&gt;Call replSetReconfig in a loop to add remaining nodes one at a time&lt;/li&gt;
	&lt;li&gt;Call &lt;tt&gt;this.awaitSecondaryNodes(self.kDefaultTimeoutMS, self._slaves, 25 /* retryIntervalMS */);&lt;/tt&gt;&lt;/li&gt;
	&lt;li&gt;In awaitSecondaryNodes, call isMaster on each node in &quot;slaves&quot;. Repeat until all slave nodes are secondaries/arbiters.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;If there&apos;s an election any time after Step 3, then one of the members of &lt;tt&gt;self._slaves&lt;/tt&gt; could be a primary now. However, so awaitSecondaryNodes keeps trying the same set of nodes until it times out.&#160;&lt;/p&gt;

&lt;p&gt;Observed in replsettest_control_12_nodes.js. It&apos;s probably more common now for a machine to get overloaded, causing heartbeat timeouts and elections:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;The test starts 12 nodes, the upper limit&lt;/li&gt;
	&lt;li&gt;The nodes are all started in parallel after&#160;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-43772&quot; title=&quot;Start up mongod replica set nodes in ReplSetTest.startSet in parallel&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-43772&quot;&gt;&lt;del&gt;SERVER-43772&lt;/del&gt;&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;There is more time spent in step 3 now that&#160;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-45079&quot; title=&quot;Only allow single-node change in reconfig command&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-45079&quot;&gt;&lt;del&gt;SERVER-45079&lt;/del&gt;&lt;/a&gt;&#160;requires we add one member at a time&lt;/li&gt;
&lt;/ol&gt;
</description>
                <environment></environment>
        <key id="1113921">SERVER-45765</key>
            <summary>Race in ReplSetTest.initiateWithAnyNodeAsPrimary</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="jesse@mongodb.com">A. Jesse Jiryu Davis</assignee>
                                    <reporter username="jesse@mongodb.com">A. Jesse Jiryu Davis</reporter>
                        <labels>
                    </labels>
                <created>Fri, 24 Jan 2020 19:03:50 +0000</created>
                <updated>Sun, 29 Oct 2023 22:12:55 +0000</updated>
                            <resolved>Sat, 25 Jan 2020 03:11:38 +0000</resolved>
                                                    <fixVersion>4.3.3</fixVersion>
                                    <component>Replication</component>
                                        <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="2766827" author="jesse" created="Mon, 27 Jan 2020 22:06:35 +0000"  >&lt;p&gt;The race was introduced in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-43766&quot; title=&quot;Investigate the slowest sections of ReplSetTest.initiate and remove any wasted downtime&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-43766&quot;&gt;&lt;del&gt;SERVER-43766&lt;/del&gt;&lt;/a&gt;. Before then, ReplSetTest would proceed once all nodes were primary, secondary, or arbiter. After that change, the test requires a &lt;b&gt;specific&lt;/b&gt; set of nodes to be secondary or arbiter, hence the test times out if there&apos;s an election before it begins waiting. This change introduced the bug:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/commit/f5a2d477761f5d954ea63a8c8a6cfa02d124e4a7#diff-bab9f33827828bf17f93734f9a93706dR1241&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/f5a2d477761f5d954ea63a8c8a6cfa02d124e4a7#diff-bab9f33827828bf17f93734f9a93706dR1241&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2763955" author="xgen-internal-githook" created="Sat, 25 Jan 2020 02:28:57 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;ajdavis&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-45765&quot; title=&quot;Race in ReplSetTest.initiateWithAnyNodeAsPrimary&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-45765&quot;&gt;&lt;del&gt;SERVER-45765&lt;/del&gt;&lt;/a&gt; Race in initiateWithAnyNodeAsPrimary&lt;/p&gt;

&lt;p&gt;If there&apos;s an election between the call to replSetInitiate and the last call to&lt;br/&gt;
replSetReconfig, the test would nevertheless expect Node 0 to be primary and&lt;br/&gt;
all others to be secondaries. Fix it so will continue as soon as all nodes are&lt;br/&gt;
primary, secondary, or arbiter.&lt;/p&gt;

&lt;p&gt;Also add resource_intensive tag to a test that starts 12 nodes.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/38ec223f7478be14fc3bf082643a1109efaeb57c&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/38ec223f7478be14fc3bf082643a1109efaeb57c&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10520">
                    <name>Problem/Incident</name>
                                                                <inwardlinks description="is caused by">
                                        <issuelink>
            <issuekey id="956578">SERVER-43766</issuekey>
        </issuelink>
                            </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>Sat, 25 Jan 2020 02:28:57 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 2 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>false</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, 2 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>29.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>jesse@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hwl1jj:</customfieldvalue>

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

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