<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 09:02:51 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>[JAVA-4743] High monitor connection churn during quiesce period</title>
                <link>https://jira.mongodb.org/browse/JAVA-4743</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>&lt;h4&gt;&lt;a name=&quot;Summary&quot;&gt;&lt;/a&gt;Summary&lt;/h4&gt;

&lt;p&gt;When a server enters quiesce mode, the Java driver will repeatedly open and close monitoring connections to that server in a tight loop, leading to high connection churn.&lt;/p&gt;

&lt;p&gt;This affects Java driver 4.7.0, but could date as far back as 4.1.&lt;br/&gt;
Affects MongoDB 5.0+ replica sets and sharded clusters.&lt;/p&gt;
&lt;h4&gt;&lt;a name=&quot;HowtoReproduce&quot;&gt;&lt;/a&gt;How to Reproduce&lt;/h4&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Start a 5.0 replica set&lt;/li&gt;
	&lt;li&gt;Connect the driver to a secondary with directConnection=true, enable logging&lt;/li&gt;
	&lt;li&gt;Execute a ping command&lt;/li&gt;
	&lt;li&gt;Sleep the thread&lt;/li&gt;
	&lt;li&gt;Kill the secondary the driver is connected to (SIGTERM)&lt;/li&gt;
	&lt;li&gt;Observe repeated connection creation for the duration of the quiesce period&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;&lt;a name=&quot;AdditionalBackground&quot;&gt;&lt;/a&gt;Additional Background&lt;/h4&gt;

&lt;p&gt;See &lt;a href=&quot;https://jira.mongodb.org/browse/HELP-37852?focusedCommentId=4864857&amp;amp;page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-4864857&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;this comment&lt;/a&gt; for additional information.&lt;/p&gt;</description>
                <environment></environment>
        <key id="2148021">JAVA-4743</key>
            <summary>High monitor connection churn during quiesce period</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="13201">Fixed</resolution>
                                        <assignee username="jeff.yemin@mongodb.com">Jeffrey Yemin</assignee>
                                    <reporter username="patrick.freed@mongodb.com">Patrick Freed</reporter>
                        <labels>
                    </labels>
                <created>Thu, 29 Sep 2022 14:20:57 +0000</created>
                <updated>Sat, 28 Oct 2023 11:20:35 +0000</updated>
                            <resolved>Thu, 29 Sep 2022 17:25:44 +0000</resolved>
                                                    <fixVersion>4.7.2</fixVersion>
                                    <component>SDAM</component>
                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="4866144" author="jeff.yemin" created="Thu, 29 Sep 2022 17:27:35 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Jeff Yemin&apos;, &apos;email&apos;: &apos;jeff.yemin@mongodb.com&apos;, &apos;username&apos;: &apos;jyemin&apos;}
&lt;p&gt;Message: Add missing condition for whether to sleep in server monitor&lt;/p&gt;

&lt;p&gt;There is a missing check in an already-complicated conditinal statement&lt;br/&gt;
for whether to sleep in the server monitor before executing the next check.&lt;/p&gt;

&lt;p&gt;The condition is included in the server discovery and monitoring specification&lt;br/&gt;
pseudo-code but missing in the driver, and there are currently no tests for it.&lt;/p&gt;

&lt;p&gt;This commits adds the missing condition to the conditional statement.  Effectively,&lt;br/&gt;
this will reduce the number of sockets that the monitor opens on a server that is&lt;br/&gt;
in the process of shutting down but still accepting connections.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-4730&quot; title=&quot;Add Builder API for $redact pipeline stage&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-4730&quot;&gt;JAVA-4730&lt;/a&gt;&lt;br/&gt;
Branch: 4.7.x&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/7d8d94d06aec460b69e46e3eb20d97d00a2ce352&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/7d8d94d06aec460b69e46e3eb20d97d00a2ce352&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4866142" author="jeff.yemin" created="Thu, 29 Sep 2022 17:27:12 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Jeff Yemin&apos;, &apos;email&apos;: &apos;jeff.yemin@mongodb.com&apos;, &apos;username&apos;: &apos;jyemin&apos;}
&lt;p&gt;Message: Add missing condition for whether to sleep in server monitor&lt;/p&gt;

&lt;p&gt;There is a missing check in an already-complicated conditinal statement&lt;br/&gt;
for whether to sleep in the server monitor before executing the next check.&lt;/p&gt;

&lt;p&gt;The condition is included in the server discovery and monitoring specification&lt;br/&gt;
pseudo-code but missing in the driver, and there are currently no tests for it.&lt;/p&gt;

&lt;p&gt;This commits adds the missing condition to the conditional statement.  Effectively,&lt;br/&gt;
this will reduce the number of sockets that the monitor opens on a server that is&lt;br/&gt;
in the process of shutting down but still accepting connections.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-4730&quot; title=&quot;Add Builder API for $redact pipeline stage&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-4730&quot;&gt;JAVA-4730&lt;/a&gt;&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/e8bc843f214704e5891e24b44489896109ba0200&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/e8bc843f214704e5891e24b44489896109ba0200&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2148730">DRIVERS-2458</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                    <customfield id="customfield_13552" key="com.go2group.jira.plugin.crm:crm_generic_field">
                        <customfieldname>Case</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[[5006R00001oxb9rQAA]]]></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_10257" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Documentation Changes</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11861"><![CDATA[Not Needed]]></customfieldvalue>

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