<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:53:55 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>[JAVA-1161] A replica set member that doesn&apos;t report its name results in removal of all servers from the client view of the replica set</title>
                <link>https://jira.mongodb.org/browse/JAVA-1161</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>&lt;p&gt;A server started with --replSet &amp;lt;name&amp;gt; return this ambiguous &lt;tt&gt;ismaster&lt;/tt&gt; response in at least three situations:&lt;/p&gt;

&lt;ol&gt;
	&lt;li&gt;an uninitialized replica set&lt;/li&gt;
	&lt;li&gt;a shunned state (shunned is when the server was removed from the replica set configuration)&lt;/li&gt;
	&lt;li&gt;briefly on member startup&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;For example: &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;   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;serverUsed&quot; : &quot;localhost:27017&quot; ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;ismaster&quot; : false ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;secondary&quot; : false ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;info&quot; : &quot;can&apos;t get local.system.replset config from self or any seed (EMPTYCONFIG)&quot; ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;isreplicaset&quot; : true ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;maxBsonObjectSize&quot; : 16777216 ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;maxMessageSizeBytes&quot; : 48000000 ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;localTime&quot; : { &quot;$date&quot; : &quot;2014-04-01T14:10:05.110Z&quot;} ,&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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-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;ok&quot; : 1.0 }&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;&lt;b&gt;Note&lt;/b&gt;: &lt;tt&gt;isreplicaset&lt;/tt&gt; exists in only these states and there is no &lt;tt&gt;hosts&lt;/tt&gt; field, nor &lt;tt&gt;setName&lt;/tt&gt; nor &lt;tt&gt;setVersion&lt;/tt&gt; to work with.&lt;/p&gt;

&lt;p&gt;The problem is that the driver doesn&apos;t detect this state, and proceeds to remove all other replica set members from the client view of the cluster.  This can result in the inability to perform operations against the cluster until the MongoClient instance is closed and re-created.&lt;/p&gt;

&lt;p&gt;Instead, the driver should ignore server descriptions for replica set members that don&apos;t contain a hosts field or a setName field.&lt;/p&gt;</description>
                <environment></environment>
        <key id="129723">JAVA-1161</key>
            <summary>A replica set member that doesn&apos;t report its name results in removal of all servers from the client view 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="jeff.yemin@mongodb.com">Jeffrey Yemin</assignee>
                                    <reporter username="jeff.yemin@mongodb.com">Jeffrey Yemin</reporter>
                        <labels>
                    </labels>
                <created>Mon, 7 Apr 2014 13:10:18 +0000</created>
                <updated>Fri, 30 Jan 2015 18:37:05 +0000</updated>
                            <resolved>Mon, 28 Apr 2014 19:00:52 +0000</resolved>
                                    <version>2.12.0</version>
                                    <fixVersion>2.12.1</fixVersion>
                    <fixVersion>3.0.0</fixVersion>
                                    <component>Cluster Management</component>
                                        <votes>1</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="817695" author="xgen-internal-githook" created="Fri, 30 Jan 2015 18:37:05 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: When a replica set member returns an empty list of hosts or no set name, assume it&apos;s not yet joined the replica set and do not remove every server from the client view of the replica set.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/0e1bb9df1572a9b5117eee03226bc156e2ff9ede&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/0e1bb9df1572a9b5117eee03226bc156e2ff9ede&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="678678" author="xgen-internal-githook" created="Fri, 1 Aug 2014 14:36:27 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: Added assertion that a replica set member without a name or hosts list will be of type ReplicaSetOther&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/ab4013156e18a8dea77449ab56a35e391bee866c&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/ab4013156e18a8dea77449ab56a35e391bee866c&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="678677" author="xgen-internal-githook" created="Fri, 1 Aug 2014 14:36:26 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: Just to be safe, also ignoring replica set members without a setName.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/df8668603a27fb08fbf8c476d1cc92c9381b46d5&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/df8668603a27fb08fbf8c476d1cc92c9381b46d5&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="678667" author="xgen-internal-githook" created="Fri, 1 Aug 2014 14:36:10 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: When a replica set member returns an empty list of hosts, assume it&apos;s not a part of an initiated replica set and do not remove every server from the client view of the replica set.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/2d69e075d4f83086326c7df90618e59269b32d05&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/2d69e075d4f83086326c7df90618e59269b32d05&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="566794" author="jeff.yemin" created="Tue, 29 Apr 2014 13:16:13 +0000"  >&lt;p&gt;Closing for 2.12.1 release.&lt;/p&gt;</comment>
                            <comment id="565856" author="xgen-internal-githook" created="Mon, 28 Apr 2014 19:00:28 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: When a replica set member returns an empty list of hosts or no set name, assume it&apos;s not yet joined the replica set and do not remove every server from the client view of the replica set.&lt;br/&gt;
Branch: 3.0.x&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/0e1bb9df1572a9b5117eee03226bc156e2ff9ede&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/0e1bb9df1572a9b5117eee03226bc156e2ff9ede&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="564657" author="xgen-internal-githook" created="Sun, 27 Apr 2014 18:35:17 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: Added assertion that a replica set member without a name or hosts list will be of type ReplicaSetOther&lt;br/&gt;
Branch: 2.12.x&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/ab4013156e18a8dea77449ab56a35e391bee866c&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/ab4013156e18a8dea77449ab56a35e391bee866c&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="563633" author="xgen-internal-githook" created="Sat, 26 Apr 2014 01:12:59 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: Just to be safe, also ignoring replica set members without a setName.&lt;br/&gt;
Branch: 2.12.x&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/df8668603a27fb08fbf8c476d1cc92c9381b46d5&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/df8668603a27fb08fbf8c476d1cc92c9381b46d5&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="540784" author="xgen-internal-githook" created="Tue, 8 Apr 2014 14:48:29 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-1161&quot; title=&quot;A replica set member that doesn&amp;#39;t report its name results in removal of all servers from the client view of the replica set&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-1161&quot;&gt;&lt;del&gt;JAVA-1161&lt;/del&gt;&lt;/a&gt;: When a replica set member returns an empty list of hosts, assume it&apos;s not a part of an initiated replica set and do not remove every server from the client view of the replica set.&lt;br/&gt;
Branch: 2.12.x&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/2d69e075d4f83086326c7df90618e59269b32d05&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/2d69e075d4f83086326c7df90618e59269b32d05&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="128978">SERVER-13458</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrg99b:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8405</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="123">Sprint 1 - April 14 - May 2</customfieldvalue>

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