<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:25:22 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-11276] Network Partition Failover Scenario - Connection pool locks system for max of 55 sec every 10 secs</title>
                <link>https://jira.mongodb.org/browse/SERVER-11276</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;If a mongod server has been disconnected from other servers, applications using the C++ driver to mongod server could experience as much as 55 seconds of delay every 10 seconds of connectivity.&lt;/p&gt;

&lt;p&gt;Issue details discussed on forum&lt;br/&gt;
 &lt;a href=&quot;https://groups.google.com/forum/#!topic/mongodb-user/3roJxyGO2Wc&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://groups.google.com/forum/#!topic/mongodb-user/3roJxyGO2Wc&lt;/a&gt;&lt;/p&gt;


</description>
                <environment>CentOS 6/64 bit.  Mongo binaries from EPEL repo</environment>
        <key id="94908">SERVER-11276</key>
            <summary>Network Partition Failover Scenario - Connection pool locks system for max of 55 sec every 10 secs</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="randolph@mongodb.com">Randolph Tan</assignee>
                                    <reporter username="dhubler">Douglas Hubler</reporter>
                        <labels>
                            <label>connection</label>
                            <label>cxxcopy</label>
                    </labels>
                <created>Fri, 18 Oct 2013 21:35:50 +0000</created>
                <updated>Wed, 10 Dec 2014 23:10:48 +0000</updated>
                            <resolved>Mon, 7 Jul 2014 19:43:56 +0000</resolved>
                                    <version>2.4.6</version>
                                                    <component>Internal Client</component>
                                        <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="650827" author="thomasr" created="Mon, 7 Jul 2014 19:43:40 +0000"  >&lt;p&gt;Hi Douglas,&lt;/p&gt;

&lt;p&gt;I believe Randolph has provided the answer to this issue in his last reply, and based on your last comment, I&apos;ll mark this issue resolved now. &lt;/p&gt;

&lt;p&gt;Kind Regards,&lt;br/&gt;
Thomas&lt;/p&gt;</comment>
                            <comment id="616279" author="dhubler" created="Tue, 10 Jun 2014 23:09:30 +0000"  >&lt;p&gt;thanks for getting back to me. unfortunately I wasn&apos;t able to try this&lt;br/&gt;
as I am no longer working on that project that use mongo.  I&apos;ll&lt;br/&gt;
forward to appropriate people though.&lt;/p&gt;

&lt;p&gt;On Tue, Jun 10, 2014 at 6:18 PM, Ramon Fernandez (JIRA)&lt;/p&gt;

</comment>
                            <comment id="616209" author="ramon.fernandez" created="Tue, 10 Jun 2014 22:13:02 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=dhubler&quot; class=&quot;user-hover&quot; rel=&quot;dhubler&quot;&gt;dhubler&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;have you had a chance to try out &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=renctan&quot; class=&quot;user-hover&quot; rel=&quot;renctan&quot;&gt;renctan&lt;/a&gt;&apos;s suggestion above of calling the &lt;tt&gt;done&lt;/tt&gt; method? Can you please let us know if this is still an issue for you?&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br/&gt;
Ram&#243;n.&lt;/p&gt;</comment>
                            <comment id="558891" author="renctan" created="Tue, 22 Apr 2014 15:01:42 +0000"  >&lt;p&gt;I apologize for the late response. I was referring to your code - which creates a fresh new connection in every iteration of the loop. If you call done before you delete the sc pointer, then the connection will be reused on the next iteration. The C++ driver current doesn&apos;t support setting the read preference on the connection level.&lt;/p&gt;</comment>
                            <comment id="448224" author="dhubler" created="Tue, 29 Oct 2013 16:31:57 +0000"  >&lt;p&gt;Interesting, so you&apos;re saying for a workaround, instead of specifying a read preference for each query, set the read preference on the connection object.  I&apos;ll have to try that.  Just to be clear, you&apos;re saying this is still an issue, you&apos;re just providing a possible workaround.&lt;/p&gt;

&lt;p&gt;BTW: You have sample code for on how to use read preference tags AND nearest on connection in C++?  I couldn&apos;t figure it out and it took a lot reading the code just to discover how to do it on query.&lt;/p&gt;</comment>
                            <comment id="448185" author="renctan" created="Tue, 29 Oct 2013 15:38:09 +0000"  >&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;As long as you reuse the same connection object over and over, you should be able to minimize the lockout from ReplicaSetMonitor::check because the DBClientReplicaSet instance will keep on using the same secondary node as much as possible without talking to the ReplicaSetMonitor as long as you don&apos;t change the read preference settings or the secondary doesn&apos;t error out.&lt;/p&gt;</comment>
                            <comment id="443401" author="dhubler" created="Sat, 19 Oct 2013 02:39:06 +0000"  >&lt;p&gt;Attaching java driver that doesn&apos;t exhibit same behavior&lt;/p&gt;</comment>
                            <comment id="443300" author="dhubler" created="Fri, 18 Oct 2013 21:49:03 +0000"  >&lt;p&gt;Instructions&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Adjust test too for your env. and compile as executable&lt;/li&gt;
	&lt;li&gt;setup mongod replica set with 3 or more nodes&lt;/li&gt;
	&lt;li&gt;configure read preference to allow to read from secondary&lt;/li&gt;
	&lt;li&gt;separate single mongod server from all other nodes&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Expected&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;node should be in read only mode&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Actual&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;startup takes several minutes on system w/11 mongod servers&lt;/li&gt;
	&lt;li&gt;every 10 seconds queries return data, they hang for 55 seconds while c++ driver retests all connections&lt;/li&gt;
&lt;/ul&gt;
</comment>
                    </comments>
                    <attachments>
                            <attachment id="32743" name="DbTest.java" size="670" author="dhubler" created="Sat, 19 Oct 2013 02:39:06 +0000"/>
                            <attachment id="32739" name="partition-hang-issue.cpp" size="1465" author="dhubler" created="Fri, 18 Oct 2013 21:49:03 +0000"/>
                            <attachment id="32738" name="partition-hang-issue.log" size="49890" author="dhubler" created="Fri, 18 Oct 2013 21:49:03 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 29 Oct 2013 15:38:09 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        9 years, 32 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_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>
                            9 years, 32 weeks, 2 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="10020"><![CDATA[Linux]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>dhubler</customfieldvalue>
            <customfieldvalue>ramon.fernandez@mongodb.com</customfieldvalue>
            <customfieldvalue>randolph@mongodb.com</customfieldvalue>
            <customfieldvalue>thomas.rueckstiess@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrmalj:</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>104204</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_10750" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Steps To Reproduce</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;ul&gt;
	&lt;li&gt;install and setup 3 or more  mongod servers in a replicaset&lt;/li&gt;
	&lt;li&gt;setup read preference tags so queries can be controlled to specific servers&lt;/li&gt;
	&lt;li&gt;take one server and disconnect it from all others. e.g.  myhost.example.org&lt;/li&gt;
	&lt;li&gt;write a tool in c++ that :&lt;/li&gt;
&lt;/ul&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;uses a ScopedDbConnection to connect mongo cluster&lt;/li&gt;
	&lt;li&gt;perform one or more read-only queries that uses read preference tags to select myhost.example.org&lt;/li&gt;
	&lt;li&gt;exits&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
	&lt;li&gt;run tool&lt;br/&gt;
  ./dbtest1 myreplset/myhost.mydomain&lt;/li&gt;
&lt;/ul&gt;
</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10166" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Tests Written</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10154"><![CDATA[Complete]]></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|hrkxyv:</customfieldvalue>

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