<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:51: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>[SERVER-19537] Allow replSetInitiate on nodes not started with --replSet</title>
                <link>https://jira.mongodb.org/browse/SERVER-19537</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;If a node is started without --replSet, and it has neither an oplog nor a local replica set config document, the operator should be able to run replSetInitiate to create a single-node replica set configuration and to prime the oplog. Then, on restart if the operator adds --replSet to the startup configuration directives, the node can immediately transition into PRIMARY rather than waiting in STARTUP for the operator to run replSetInitiate. This should only be allowed for single-node replica set configurations.&lt;/p&gt;</description>
                <environment></environment>
        <key id="222339">SERVER-19537</key>
            <summary>Allow replSetInitiate on nodes not started with --replSet</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</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="benety.goh@mongodb.com">Benety Goh</assignee>
                                    <reporter username="schwerin@mongodb.com">Andy Schwerin</reporter>
                        <labels>
                    </labels>
                <created>Thu, 23 Jul 2015 14:31:37 +0000</created>
                <updated>Wed, 25 Jan 2017 22:00:33 +0000</updated>
                            <resolved>Sat, 8 Aug 2015 17:03:54 +0000</resolved>
                                                    <fixVersion>3.1.7</fixVersion>
                                    <component>Replication</component>
                                        <votes>0</votes>
                                    <watches>7</watches>
                                                                                                                <comments>
                            <comment id="1000070" author="xgen-internal-githook" created="Sat, 8 Aug 2015 16:55:26 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;benety&apos;, u&apos;name&apos;: u&apos;Benety Goh&apos;, u&apos;email&apos;: u&apos;benety@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19537&quot; title=&quot;Allow replSetInitiate on nodes not started with --replSet&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19537&quot;&gt;&lt;del&gt;SERVER-19537&lt;/del&gt;&lt;/a&gt; allow replSetInitiate on nodes not started with --replSet&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/3a30ae195c62b0ae9bdb78e5733a90ae163eeadf&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/3a30ae195c62b0ae9bdb78e5733a90ae163eeadf&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1000069" author="xgen-internal-githook" created="Sat, 8 Aug 2015 16:55:25 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;benety&apos;, u&apos;name&apos;: u&apos;Benety Goh&apos;, u&apos;email&apos;: u&apos;benety@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19537&quot; title=&quot;Allow replSetInitiate on nodes not started with --replSet&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19537&quot;&gt;&lt;del&gt;SERVER-19537&lt;/del&gt;&lt;/a&gt; replication coordinator processReplSetInitiate() validates config and initializes oplog even when replication is disabled&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/d1484927405b1ab581bcdf380837bfe9fc00b1fb&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/d1484927405b1ab581bcdf380837bfe9fc00b1fb&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1000068" author="xgen-internal-githook" created="Sat, 8 Aug 2015 16:55:24 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;benety&apos;, u&apos;name&apos;: u&apos;Benety Goh&apos;, u&apos;email&apos;: u&apos;benety@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19537&quot; title=&quot;Allow replSetInitiate on nodes not started with --replSet&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19537&quot;&gt;&lt;del&gt;SERVER-19537&lt;/del&gt;&lt;/a&gt; replication coordinator external state initiateOplog() should bypass OpObserver and invoke _logOp() directly when replication is disabled&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/7e5a88c5ebb543c44df144951ab3daf535600df8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/7e5a88c5ebb543c44df144951ab3daf535600df8&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1000067" author="xgen-internal-githook" created="Sat, 8 Aug 2015 16:55:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;benety&apos;, u&apos;name&apos;: u&apos;Benety Goh&apos;, u&apos;email&apos;: u&apos;benety@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19537&quot; title=&quot;Allow replSetInitiate on nodes not started with --replSet&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19537&quot;&gt;&lt;del&gt;SERVER-19537&lt;/del&gt;&lt;/a&gt; added updateReplOpTime to ReplicationCoordinatorExternalState::initiateOplog()&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/644e5ed34012780de090f2c8b0dcffd334af166c&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/644e5ed34012780de090f2c8b0dcffd334af166c&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1000066" author="xgen-internal-githook" created="Sat, 8 Aug 2015 16:55:22 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;benety&apos;, u&apos;name&apos;: u&apos;Benety Goh&apos;, u&apos;email&apos;: u&apos;benety@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19537&quot; title=&quot;Allow replSetInitiate on nodes not started with --replSet&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19537&quot;&gt;&lt;del&gt;SERVER-19537&lt;/del&gt;&lt;/a&gt; extended _logOp and createOplog to accept optional collection name and replication settings.&lt;/p&gt;

&lt;p&gt;This supports creating the oplog collection and appending oplog entries when replication is disabled.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/8800fe3529cfea045c49d065b4b2694ed334cc07&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/8800fe3529cfea045c49d065b4b2694ed334cc07&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1000065" author="xgen-internal-githook" created="Sat, 8 Aug 2015 16:55:21 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;benety&apos;, u&apos;name&apos;: u&apos;Benety Goh&apos;, u&apos;email&apos;: u&apos;benety@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19537&quot; title=&quot;Allow replSetInitiate on nodes not started with --replSet&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19537&quot;&gt;&lt;del&gt;SERVER-19537&lt;/del&gt;&lt;/a&gt; assert.commandFailedWithCode should return command result&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/ac92a2b394003895360d83b0eb9fa55ea382b274&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/ac92a2b394003895360d83b0eb9fa55ea382b274&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="987698" author="kevin.pulo@10gen.com" created="Fri, 24 Jul 2015 00:24:09 +0000"  >&lt;p&gt;Given that initiate normally adds a&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;{ ..., &quot;op&quot; : &quot;n&quot;, &quot;ns&quot; : &quot;&quot;, &quot;o&quot; : { &quot;msg&quot; : &quot;initiating set&quot; } }&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;
&lt;p&gt;entry to the oplog, I think maybe we need to prime the oplog here?&lt;/p&gt;</comment>
                            <comment id="987580" author="scotthernandez" created="Thu, 23 Jul 2015 22:04:18 +0000"  >&lt;p&gt;We may also want to ensure that the config contains a single voting+electable member which is the node running the command &amp;#8211; members.size() == 1 &amp;amp;&amp;amp; member&lt;span class=&quot;error&quot;&gt;&amp;#91;0&amp;#93;&lt;/span&gt; is self and non-prio-0 with a vote.&lt;/p&gt;</comment>
                            <comment id="987547" author="milkie" created="Thu, 23 Jul 2015 21:36:04 +0000"  >&lt;p&gt;Mini-spec:&lt;br/&gt;
If replSetInitiate command is run on a node that has not been started with &quot;-&lt;del&gt;master&quot; nor &quot;&lt;/del&gt;&lt;del&gt;slave&quot; nor &quot;&lt;/del&gt;-replSet&quot;, instead of returning an error, it shall:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Return an error if no config document was explicitly passed in to the command, since we have no way of determining the rs name.&lt;/li&gt;
	&lt;li&gt;Do no config state changes, since this command will never leave the config state in an incomplete state.&lt;/li&gt;
	&lt;li&gt;Return an error if a config already exists in local.system.replset.&lt;/li&gt;
	&lt;li&gt;Continue to validate the syntax and settings of the config object in the same way as replset initiate.&lt;/li&gt;
	&lt;li&gt;Return an error if the members array is not size 1, or if the element in the members array is not self.&lt;/li&gt;
	&lt;li&gt;Skip the quorum check.&lt;/li&gt;
	&lt;li&gt;Store the initial config document.&lt;/li&gt;
	&lt;li&gt;Prime the oplog&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;The goal is to leave the node in such a state that when you restart the process with --replSet, it loads the stored config and immediately proceeds regular replica set startup and eventually ends up in PRIMARY state with no further user interaction.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="224908">DOCS-6009</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="12490">SERVER-1448</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="266537">SERVER-22731</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="218045">SERVER-19524</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="279532">SERVER-23698</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>9.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</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>Thu, 23 Jul 2015 21:36:04 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        8 years, 27 weeks, 4 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_14262" key="com.atlassian.jira.plugin.system.customfieldtypes:datepicker">
                        <customfieldname>End date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 7 Aug 2015 23:59:59 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-2</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>crystal.horn@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            8 years, 27 weeks, 4 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>schwerin@mongodb.com</customfieldvalue>
            <customfieldvalue>benety.goh@mongodb.com</customfieldvalue>
            <customfieldvalue>milkie@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>kevin.pulo@mongodb.com</customfieldvalue>
            <customfieldvalue>scotthernandez</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrkztb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hreeyn:</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_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="593">RPL 7 08/10/15</customfieldvalue>
    <customfieldvalue id="594">RPL 8 08/31/15</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_14261" key="com.atlassian.jira.plugin.system.customfieldtypes:datepicker">
                        <customfieldname>Start date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Thu, 23 Jul 2015 00:00:00 +0000</customfieldvalue>

                        </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_11861" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>User Summary</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11856"><![CDATA[Not Needed]]></customfieldvalue>

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

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