<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:18:39 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>[CDRIVER-3644] Improve behavior of clearing connections</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-3644</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;In SDAM, connection pools are cleared in these situations:&lt;/p&gt;

&lt;p&gt;1. A network error on an app socket (any error during handshake, or a non-timeout error after).&lt;br/&gt;
2. A &quot;shutdown error&quot; on any server, or a &quot;not master&quot; error on &amp;lt;=4.0 server.&lt;br/&gt;
3. Any network error during monitoring.&lt;/p&gt;

&lt;p&gt;libmongoc does not have a connection pool, but instead a client pool. It partially implements some of this behavior for the connections it has to a server, but it needs improvement.&lt;/p&gt;

&lt;p&gt;(1) is partially implemented in mongoc-cluster.c by calls to mongoc_cluster_disconnect_node. But this only disconnects the current client&apos;s connection to the server. It does not disconnect other clients. And it does not disconnect the topology scanner (which may be due to the fact that the topology scanner is not thread safe).&lt;/p&gt;

&lt;p&gt;(2) similarly only applies to the client receiving the error. It does not close connections on other clients in the pool or the topology scanner.&lt;/p&gt;

&lt;p&gt;(3) is currently implemented (though &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-3625&quot; title=&quot;Multi-threaded scanning should scan servers independently&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-3625&quot;&gt;&lt;del&gt;CDRIVER-3625&lt;/del&gt;&lt;/a&gt; may change this). There is a timestamp field on a topology scanner node. It is set to the current time every time the scanner node re-establishes connection.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1336712">CDRIVER-3644</key>
            <summary>Improve behavior of clearing connections</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</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="kevin.albertson@mongodb.com">Kevin Albertson</reporter>
                        <labels>
                    </labels>
                <created>Sat, 2 May 2020 07:23:54 +0000</created>
                <updated>Thu, 23 Mar 2023 22:00:58 +0000</updated>
                                                                            <component>network</component>
                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                        <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|hr6jkc:1i</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>