<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:06:48 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-4731] Removed replica set nodes should not appear as members of the replica set.</title>
                <link>https://jira.mongodb.org/browse/SERVER-4731</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;When you call rs.remove(), the removed node still looks a lot like a replica set.&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;It still responds to rs.status().&lt;/li&gt;
	&lt;li&gt;It claims to be syncing from a node in the original replica set.&lt;/li&gt;
	&lt;li&gt;It has a state of STARTUP.&lt;/li&gt;
	&lt;li&gt;It has the same name as the old replica set.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;To avoid confusion on the client side, removed nodes should immediately terminate.&lt;/p&gt;</description>
                <environment></environment>
        <key id="28748">SERVER-4731</key>
            <summary>Removed replica set nodes should not appear as members of the replica set.</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="9">Done</resolution>
                                        <assignee username="milkie@mongodb.com">Eric Milkie</assignee>
                                    <reporter username="kbanker">Kyle Banker</reporter>
                        <labels>
                    </labels>
                <created>Fri, 20 Jan 2012 16:24:02 +0000</created>
                <updated>Fri, 9 Nov 2012 07:00:23 +0000</updated>
                            <resolved>Thu, 16 Feb 2012 17:36:49 +0000</resolved>
                                    <version>2.0.2</version>
                                    <fixVersion>2.1.1</fixVersion>
                                    <component>Replication</component>
                                        <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="89097" author="milkie" created="Thu, 16 Feb 2012 17:38:06 +0000"  >&lt;p&gt;need to add new state to the state table in &quot;Replica Set Commands&quot;&lt;/p&gt;</comment>
                            <comment id="88354" author="auto" created="Tue, 14 Feb 2012 20:07:28 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;login&apos;: u&apos;milkie&apos;, u&apos;name&apos;: u&apos;Eric Milkie&apos;, u&apos;email&apos;: u&apos;milkie@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-4731&quot; title=&quot;Removed replica set nodes should not appear as members of the replica set.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-4731&quot;&gt;&lt;del&gt;SERVER-4731&lt;/del&gt;&lt;/a&gt; use simpler english&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/5984ac837f0fab4eeac4c72e933c2685939e65de&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/5984ac837f0fab4eeac4c72e933c2685939e65de&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="88258" author="auto" created="Tue, 14 Feb 2012 16:14:37 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;login&apos;: u&apos;milkie&apos;, u&apos;name&apos;: u&apos;Eric Milkie&apos;, u&apos;email&apos;: u&apos;milkie@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-4731&quot; title=&quot;Removed replica set nodes should not appear as members of the replica set.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-4731&quot;&gt;&lt;del&gt;SERVER-4731&lt;/del&gt;&lt;/a&gt; add new state for removed replicaset members&lt;/p&gt;

&lt;p&gt;New behavior: when you remove a replica set node, its state changes&lt;br/&gt;
to SHUNNED until it is either shut down or readded to a replica set.&lt;br/&gt;
After it is removed, the removed node sees only itself in the&lt;br/&gt;
replica set configuration.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/c0e0f9d07a1758075f5ac3196ab10c5d1aeece76&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/c0e0f9d07a1758075f5ac3196ab10c5d1aeece76&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="86248" author="milkie" created="Tue, 7 Feb 2012 21:11:46 +0000"  >&lt;p&gt;Replica set nodes used to terminate when they were removed.  This feature was added with 8a0def48 and removed with 759e1e646 .&lt;br/&gt;
To support the use case of removing a node and then readding it (without shutting down the node!), I&apos;ll be looking at cleaning up the state transition.&lt;/p&gt;</comment>
                            <comment id="83262" author="niemeyer" created="Mon, 30 Jan 2012 12:11:23 +0000"  >&lt;p&gt;I spent some time on this scenario over the weekend. Some related comments:&lt;/p&gt;

&lt;p&gt;1. After the master connection drops, there&apos;s a window of time when&lt;br/&gt;
the driver can connect to the removed secondary node and still get an&lt;br/&gt;
ismaster command result saying it&apos;s a secondary, so the ismaster=false&lt;br/&gt;
+ secondary=false may be a reliable indicator of whether a server must&lt;br/&gt;
be disregarded as a cluster member, but it&apos;s not enough to say that&lt;br/&gt;
the server is part of the cluster (&quot;if&quot;, rather than &quot;iff&quot;).&lt;/p&gt;

&lt;p&gt;2. As expected the list of replica set members returned by the master&lt;br/&gt;
is immediately correct once a reconnection succeeds, so that seems to&lt;br/&gt;
be the best way to correctly fix the cluster topology after the&lt;br/&gt;
removal event.&lt;/p&gt;

&lt;p&gt;3. It&apos;s curious that the primary drops all connections on the removal,&lt;br/&gt;
but the removed node itself does not.&lt;/p&gt;

&lt;p&gt;I&apos;m hoping to release an updated version of the Go driver with that&lt;br/&gt;
handled in a better fashion in the next few days including a proper&lt;br/&gt;
test verifying the driver (and server) behavior.&lt;/p&gt;</comment>
                            <comment id="81546" author="niemeyer" created="Sun, 22 Jan 2012 22:56:50 +0000"  >&lt;p&gt;For the record, as Kyle commented elsewhere the following scheme is also a workaround to detect when a host should be ignored for the moment:&lt;/p&gt;

&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;len(hosts) == 1&lt;/li&gt;
	&lt;li&gt;ismaster == false&lt;/li&gt;
	&lt;li&gt;secondary == false&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="81281" author="kbanker" created="Fri, 20 Jan 2012 17:18:14 +0000"  >&lt;p&gt;If the node is not allowed to terminate, it should at the very least revert to a state when the replica set has not been initiated yet. That is, the rs.status() and db.isMaster() commands should never indicate that the node is part of a replica set.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                                        </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="31399">SERVER-5058</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>7.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Sun, 22 Jan 2012 22:56:50 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        12 years, 6 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>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ian@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            12 years, 6 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>auto</customfieldvalue>
            <customfieldvalue>milkie@mongodb.com</customfieldvalue>
            <customfieldvalue>niemeyer</customfieldvalue>
            <customfieldvalue>kbanker</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrog9r:</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>5863</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_10166" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Tests Written</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10153"><![CDATA[Unneeded]]></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_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hs4uwn:</customfieldvalue>

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