<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:37:05 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>[CSHARP-519] Support load balancing and failover between multiple mongos routers</title>
                <link>https://jira.mongodb.org/browse/CSHARP-519</link>
                <project id="10041" key="CSHARP">C# Driver</project>
                    <description>&lt;p&gt;Support load balancing and failover between multiple mongos routers. In this release the set of available mongos routers is determined by the connection string. The driver will measure ping time to the available mongos routers and will randomly distribute queries across the mongos routers that have &quot;fast&quot; ping times.&lt;/p&gt;</description>
                <environment></environment>
        <key id="43428">CSHARP-519</key>
            <summary>Support load balancing and failover between multiple mongos routers</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="craig.wilson@mongodb.com">Craig Wilson</assignee>
                                    <reporter username="robert@mongodb.com">Robert Stam</reporter>
                        <labels>
                    </labels>
                <created>Thu, 5 Jul 2012 13:43:06 +0000</created>
                <updated>Thu, 20 Mar 2014 14:34:45 +0000</updated>
                            <resolved>Fri, 20 Jul 2012 12:52:52 +0000</resolved>
                                    <version>1.5</version>
                                    <fixVersion>1.6</fixVersion>
                                                        <votes>1</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="154475" author="auto" created="Fri, 17 Aug 2012 18:38:44 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-08-17T11:37:36-07:00&apos;, u&apos;name&apos;: u&apos;Craig Wilson&apos;, u&apos;email&apos;: u&apos;craiggwilson@gmail.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-519&quot; title=&quot;Support load balancing and failover between multiple mongos routers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-519&quot;&gt;&lt;del&gt;CSHARP-519&lt;/del&gt;&lt;/a&gt;: fixed threading related bugs caused by a refactor and optimized many of the classes to use lock-less algorithms as they do not require ordering guarantees, only thread safety.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/58df048b95ca7f10dc1c37669ec05229770f3809&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/58df048b95ca7f10dc1c37669ec05229770f3809&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="144695" author="auto" created="Wed, 18 Jul 2012 21:32:29 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-07-18T13:39:03-07:00&apos;, u&apos;email&apos;: u&apos;craiggwilson@gmail.com&apos;, u&apos;name&apos;: u&apos;Craig Wilson&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-519&quot; title=&quot;Support load balancing and failover between multiple mongos routers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-519&quot;&gt;&lt;del&gt;CSHARP-519&lt;/del&gt;&lt;/a&gt;: fixing minor code issues.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/cc6218c5fe6739acd960d100ebfdfc083219c27d&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/cc6218c5fe6739acd960d100ebfdfc083219c27d&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="144694" author="auto" created="Wed, 18 Jul 2012 21:32:28 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-07-18T09:07:55-07:00&apos;, u&apos;email&apos;: u&apos;craiggwilson@gmail.com&apos;, u&apos;name&apos;: u&apos;Craig Wilson&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-519&quot; title=&quot;Support load balancing and failover between multiple mongos routers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-519&quot;&gt;&lt;del&gt;CSHARP-519&lt;/del&gt;&lt;/a&gt;: removed lock in ChooseServerInstance as it was unnecessary and prevented secondary read operations from proceeding.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/b4a22e58a808897b5b8e1eadd4a7ae59ae618ada&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/b4a22e58a808897b5b8e1eadd4a7ae59ae618ada&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="144693" author="auto" created="Wed, 18 Jul 2012 21:32:27 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-07-18T06:58:12-07:00&apos;, u&apos;email&apos;: u&apos;craiggwilson@gmail.com&apos;, u&apos;name&apos;: u&apos;Craig Wilson&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-519&quot; title=&quot;Support load balancing and failover between multiple mongos routers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-519&quot;&gt;&lt;del&gt;CSHARP-519&lt;/del&gt;&lt;/a&gt;: removed read lock from DiscoveringMongoServerProxy as it was a performance problem in high contention systems.  Instead, make the state variables volatile.  This isn&apos;t necessary for &amp;gt; .NET 2.0, but mono does not have the same memory model guarantees, so we have coded to the ECMA standard.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/3616cdd7e724f411a13689bacd201ee47391e389&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/3616cdd7e724f411a13689bacd201ee47391e389&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="144692" author="auto" created="Wed, 18 Jul 2012 21:32:25 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-07-18T06:13:03-07:00&apos;, u&apos;email&apos;: u&apos;craiggwilson@gmail.com&apos;, u&apos;name&apos;: u&apos;Craig Wilson&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-519&quot; title=&quot;Support load balancing and failover between multiple mongos routers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-519&quot;&gt;&lt;del&gt;CSHARP-519&lt;/del&gt;&lt;/a&gt;: fixed an issue where the initial instance state wasn&apos;t accounted for causing the driver to hang in a connecting state.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/b4c897e88bbabad81eb8ee7ec247716bf66055c7&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/b4c897e88bbabad81eb8ee7ec247716bf66055c7&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="142540" author="auto" created="Thu, 12 Jul 2012 20:40:53 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-07-12T08:40:54-07:00&apos;, u&apos;email&apos;: u&apos;craiggwilson@gmail.com&apos;, u&apos;name&apos;: u&apos;Craig Wilson&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-500&quot; title=&quot;If host names in replica set connection string are aliases of the host names in the replica set config connection fails the first time&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-500&quot;&gt;&lt;del&gt;CSHARP-500&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-519&quot; title=&quot;Support load balancing and failover between multiple mongos routers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-519&quot;&gt;&lt;del&gt;CSHARP-519&lt;/del&gt;&lt;/a&gt;: refactored ReplicaSetMongoServerProxy and ShardedMongoServerProxy to use a common base class.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/07f73d4f9f579fe4a49930335a82b5290f0092df&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/07f73d4f9f579fe4a49930335a82b5290f0092df&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="142535" author="auto" created="Thu, 12 Jul 2012 20:40:45 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-07-11T13:43:01-07:00&apos;, u&apos;email&apos;: u&apos;craiggwilson@gmail.com&apos;, u&apos;name&apos;: u&apos;Craig Wilson&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-500&quot; title=&quot;If host names in replica set connection string are aliases of the host names in the replica set config connection fails the first time&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-500&quot;&gt;&lt;del&gt;CSHARP-500&lt;/del&gt;&lt;/a&gt;:refactored connection logic. &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-519&quot; title=&quot;Support load balancing and failover between multiple mongos routers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-519&quot;&gt;&lt;del&gt;CSHARP-519&lt;/del&gt;&lt;/a&gt;: implemented mongos failover and load balancing.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/35432a8dc173348a1f7904644cf1f2f6ec706851&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/35432a8dc173348a1f7904644cf1f2f6ec706851&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="41439">CSHARP-500</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|hrh7br:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>13986</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>