<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:36:19 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-264] Remove connect option from connection string</title>
                <link>https://jira.mongodb.org/browse/CSHARP-264</link>
                <project id="10041" key="CSHARP">C# Driver</project>
                    <description>&lt;p&gt;No other driver supports the connect=mode option on the connect string, so we think it should be removed from the C# driver. The driver must still know what connection mode to use (direct or replicaset), but this will now be implied by the other options.&lt;/p&gt;

&lt;p&gt;If there is more than one host or if the replicaset=name option is present then the driver will connect to a replica set. Otherwise it will connect directly to a single server.&lt;/p&gt;

&lt;p&gt;What is lost is the ability to specify a list of hosts with connect=direct and have the driver try the servers in order until it finds one it can connect to. You can duplicate this behavior in your own code by trying a sequence of single host connection strings yourself.&lt;/p&gt;

&lt;p&gt;This change is scheduled for some future release to allow sufficient time for comments.&lt;/p&gt;</description>
                <environment></environment>
        <key id="19280">CSHARP-264</key>
            <summary>Remove connect option from connection string</summary>
                <type id="1" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14703&amp;avatarType=issuetype">Bug</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</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="2">Won&apos;t Fix</resolution>
                                        <assignee username="robert@mongodb.com">Robert Stam</assignee>
                                    <reporter username="robert@mongodb.com">Robert Stam</reporter>
                        <labels>
                    </labels>
                <created>Fri, 8 Jul 2011 15:12:05 +0000</created>
                <updated>Mon, 11 Mar 2019 18:45:04 +0000</updated>
                            <resolved>Mon, 6 Apr 2015 19:54:17 +0000</resolved>
                                    <version>1.2</version>
                                                                        <votes>1</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="161865" author="craiggwilson" created="Sat, 8 Sep 2012 00:38:22 +0000"  >&lt;p&gt;I believe we still need to keep this option as we don&apos;t do auto discovery when only 1 server is listed so that clients can connect directly to a replica set member.  Hence, we still need to connect in order to support listing a single server on the connection string and force the driver to connect as if its a replica set.&lt;/p&gt;</comment>
                            <comment id="141300" author="rstam" created="Tue, 10 Jul 2012 14:08:24 +0000"  >&lt;p&gt;There will be support in 1.6 for automatic discovery of the type of servers being connected to. Automatic discovery will be done when the connection mode is:&lt;/p&gt;

&lt;p&gt;connect=automatic&lt;/p&gt;

&lt;p&gt;which is now the default if the connection string doesn&apos;t have a value for connect.&lt;/p&gt;

&lt;p&gt;The decision whether to actually remove the connect option from the connection string is being postponed to 2.0, and one possibility is that we will decide to leave it in.&lt;/p&gt;</comment>
                            <comment id="133279" author="rstam" created="Fri, 15 Jun 2012 14:03:00 +0000"  >&lt;p&gt;It&apos;s currently scheduled for 1.6.&lt;/p&gt;</comment>
                            <comment id="133277" author="kamaradclimber" created="Fri, 15 Jun 2012 13:59:04 +0000"  >&lt;p&gt;Any progress on this feature ?&lt;/p&gt;</comment>
                            <comment id="73837" author="kamaradclimber" created="Fri, 16 Dec 2011 09:12:07 +0000"  >&lt;p&gt;This solution is perfect for my usage.&lt;/p&gt;</comment>
                            <comment id="73445" author="rstam" created="Thu, 15 Dec 2011 19:09:10 +0000"  >&lt;p&gt;One proposal is this:&lt;/p&gt;

&lt;p&gt;1. If the connection string only contains a single server then the driver will always connect directly to that server and no other.&lt;/p&gt;

&lt;p&gt;2. If the connection string contains two or more servers then the driver will automatically detect whether they are replica set members or mongos&apos;s. If they are replica set members standard replica set connection conventions are used. If they are mongos&apos;s one of them will be chosen and the rest are available for failover. If they are standalone mongod&apos;s the driver should probably raise an error (what&apos;s the point of connecting to a random standalone database?).&lt;/p&gt;

&lt;p&gt;So basically the driver would do the right thing automatically. There are a couple of edge cases that might behave differently but they are probably not common&lt;/p&gt;</comment>
                            <comment id="73404" author="kamaradclimber" created="Thu, 15 Dec 2011 16:58:17 +0000"  >&lt;p&gt;And what is their way to support connection failover on mongos ?&lt;/p&gt;

&lt;p&gt;The java driver seems to have droppend the support : &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-338&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.mongodb.org/browse/JAVA-338&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="73398" author="rstam" created="Thu, 15 Dec 2011 16:44:11 +0000"  >&lt;p&gt;The C# driver also defaults to replica set connection mode when more than one server is provided in the connection string. The connect=direct mode is used to override the default, thus telling the driver that the multiple servers are not a replica set seed list but instead are a list of single instance servers to try one at a time until a successful connection is made (the multiple servers in the connect=direct mode presumably either be mongos&apos;s or single server mongod&apos;s).&lt;/p&gt;

&lt;p&gt;I would like to keep the connect=direct feature, but there is pressure from other driver teams to remove it because other drivers don&apos;t support it.&lt;/p&gt;</comment>
                            <comment id="73279" author="kamaradclimber" created="Thu, 15 Dec 2011 08:19:48 +0000"  >&lt;p&gt;Mongos as a single point of failure would discourage to use the driver (as it is) for production service. For now we can use it, but I may have to build a wrapper around MongoServer class to handle (re)connection to several mongos.&lt;/p&gt;</comment>
                            <comment id="73239" author="craiggwilson" created="Thu, 15 Dec 2011 02:29:08 +0000"  >&lt;p&gt;I believe the other drivers make an assumption: If there is more than one server provided in the connection string, it uses replica set mode.  Otherwise, it uses single server mode.&lt;/p&gt;</comment>
                            <comment id="67389" author="rstam" created="Thu, 17 Nov 2011 15:22:03 +0000"  >&lt;p&gt;Thanks for your comments. Still not sure exactly what we will end up doing regarding this option on the connect string. In any case there won&apos;t be any changes in the next release so there is still time for others to comment as well.&lt;/p&gt;</comment>
                            <comment id="67347" author="kamaradclimber" created="Thu, 17 Nov 2011 11:00:11 +0000"  >&lt;p&gt;Is there any idea on how we can handle the automatic failover between mongos if this connection=direct is removed ?&lt;/p&gt;

&lt;p&gt;This would make the mongos a single point of failure and would create the need for the users to use a system of exception handling to be able to connect to another mongos if the one provided is unreachable.&lt;/p&gt;</comment>
                            <comment id="61128" author="kamaradclimber" created="Tue, 18 Oct 2011 14:49:14 +0000"  >&lt;p&gt;This feature is important to us : it allow to have automatic failover on mongos. This avoid to have a single point of failure.&lt;/p&gt;

&lt;p&gt;I can understand that the connect=mode option is not the best option. Maybe the driver could try to connect to any instance of the server list provided and understand if this part of a replicaset or a mongos. This allow to remove the option while preserving this nice feature.&lt;br/&gt;
the downside is the driver would need more time to connect.&lt;/p&gt;</comment>
                            <comment id="61125" author="rstam" created="Tue, 18 Oct 2011 14:30:41 +0000"  >&lt;p&gt;Instead of voting on this issue, please comment. That way it will be clear if you want connect=mode kept or removed, and why.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Backwards Compatibility</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10012"><![CDATA[Major Change]]></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_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrsujj:</customfieldvalue>

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