<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:46:47 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-3960] Consider changing the default of MaxConnectionLifeTime to infinite</title>
                <link>https://jira.mongodb.org/browse/CSHARP-3960</link>
                <project id="10041" key="CSHARP">C# Driver</project>
                    <description>&lt;ul&gt;
	&lt;li&gt;Avoid killing and recreating active connections every 30 minutes&lt;/li&gt;
	&lt;li&gt;Follow the CMAP spec for connection management&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="1921712">CSHARP-3960</key>
            <summary>Consider changing the default of MaxConnectionLifeTime to infinite</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</priority>
                        <status id="10038" iconUrl="https://jira.mongodb.org/images/icons/subtask.gif" description="">Backlog</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="boris.dogadov@mongodb.com">Boris Dogadov</reporter>
                        <labels>
                    </labels>
                <created>Tue, 9 Nov 2021 19:41:20 +0000</created>
                <updated>Thu, 31 Mar 2022 00:16:35 +0000</updated>
                                                                            <component>Connectivity</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="4180928" author="rstam" created="Wed, 10 Nov 2021 17:30:09 +0000"  >&lt;p&gt;Fair point that MaxConnectionLifeTime should be added to the CMAP spec.&lt;/p&gt;</comment>
                            <comment id="4180921" author="rstam" created="Wed, 10 Nov 2021 17:27:55 +0000"  >&lt;p&gt;I doesn&apos;t seem like DRIVERS-1198 will help at all with the load balancing issue.&lt;/p&gt;

&lt;p&gt;I disagree that we should remove MaxConnectionLifeTime. But given what we have learned about how long lived connections interact badly with load balancing we should reduce the default value to something a lot shorter than 30 minutes.&lt;/p&gt;</comment>
                            <comment id="4180912" author="JIRAUSER1257742" created="Wed, 10 Nov 2021 17:24:15 +0000"  >&lt;p&gt;It would be great to have any evidence of the original problem, and maybe gather some data from other drivers as well.&lt;br/&gt;
Sounds like load balancers problem would be a common problem among all drivers, in that case it should be addressed by CMAP spec.&lt;/p&gt;

&lt;p&gt;While ConnectionSettings.MaxLifeTime might mitigate the problem of possible network instability to some extent, it might not be the ideal approach.&lt;br/&gt;
DRIVERS-1198&#160;should address that, maybe it will introduce more adaptive approach, which might perform better.&lt;/p&gt;

&lt;p&gt;I think that connection management in this case should align as much as possible with CMAP spec.&lt;br/&gt;
I would suggest that as part of&#160;DRIVERS-1198&#160;or before, we turn off MaxLifeTime by default and then deprecate it.&lt;/p&gt;</comment>
                            <comment id="4180735" author="rstam" created="Wed, 10 Nov 2021 16:32:49 +0000"  >&lt;p&gt;While MaxConnectionLifeTime was originally introduced to deal with network environments that don&apos;t deal reliably with long lived connections, now that we support mongos behind a load balancer there is an additional reason to keep MaxConnectionLifeTime: load balancers don&apos;t balance well when connections are long lived.&lt;/p&gt;

&lt;p&gt;Here&apos;s an interesting article on how long lived connections interfere with load balancing:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.ateam-oracle.com/post/long-lived-tcp-connections-and-load-balancers&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://www.ateam-oracle.com/post/long-lived-tcp-connections-and-load-balancers&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So perhaps we should actually move in the opposite direction, and reduce the default value of MaxConnectionLifeTime from 30 minutes to something like 5 minutes. Figuring out the best new smaller value is tricky.&lt;/p&gt;</comment>
                    </comments>
                    <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|hzt52n:</customfieldvalue>

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