<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:39:14 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>[GODRIVER-2730] Fix possible deadlock when recovering panic in &quot;Server.update&quot;</title>
                <link>https://jira.mongodb.org/browse/GODRIVER-2730</link>
                <project id="14289" key="GODRIVER">Go Driver</project>
                    <description>&lt;p&gt;The server heartbeat goroutine (&lt;tt&gt;Server.update&lt;/tt&gt;) uses a &quot;defer recover&quot; block that catches any panics that happen during heartbeats. That &quot;defer recover&quot; block uses a blocking channel receive to prevent the &lt;tt&gt;Server.update&lt;/tt&gt; call from exiting until &lt;tt&gt;Server.Disconnect&lt;/tt&gt; is called (see code &lt;a href=&quot;https://github.com/mongodb/mongo-go-driver/blob/ef0c0aba11481d8876566f4b889444e241f63064/x/mongo/driver/topology/server.go#L477-L485&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;here&lt;/a&gt;). If a panic does happen, that blocking channel receive can result in a deadlock when the application is shutting down. Remove the channel receive to prevent a deadlock while shutting down.&lt;/p&gt;

&lt;p&gt;Definition of done:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Remove the blocking channel receive in the &quot;defer recover&quot; block in &lt;tt&gt;Server.update&lt;/tt&gt;.&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="2228418">GODRIVER-2730</key>
            <summary>Fix possible deadlock when recovering panic in &quot;Server.update&quot;</summary>
                <type id="1" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14703&amp;avatarType=issuetype">Bug</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</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="qingyang.hu@mongodb.com">Qingyang Hu</assignee>
                                    <reporter username="matt.dale@mongodb.com">Matt Dale</reporter>
                        <labels>
                    </labels>
                <created>Tue, 10 Jan 2023 00:55:25 +0000</created>
                <updated>Sat, 28 Oct 2023 11:37:22 +0000</updated>
                            <resolved>Mon, 13 Mar 2023 19:21:58 +0000</resolved>
                                                    <fixVersion>1.12.0</fixVersion>
                    <fixVersion>1.11.3</fixVersion>
                                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="5279495" author="xgen-internal-githook" created="Fri, 17 Mar 2023 00:01:29 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Qingyang Hu&apos;, &apos;email&apos;: &apos;103950869+qingyang-hu@users.noreply.github.com&apos;, &apos;username&apos;: &apos;qingyang-hu&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/GODRIVER-2730&quot; title=&quot;Fix possible deadlock when recovering panic in &amp;quot;Server.update&amp;quot;&quot; class=&quot;issue-link&quot; data-issue-key=&quot;GODRIVER-2730&quot;&gt;&lt;del&gt;GODRIVER-2730&lt;/del&gt;&lt;/a&gt; Remove blocking channel in update recovering. (#1196)&lt;br/&gt;
Branch: release/1.11&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-go-driver/commit/53b68156c6e2369e40af4c70aa1ea3b2c4664c3d&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-go-driver/commit/53b68156c6e2369e40af4c70aa1ea3b2c4664c3d&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="5268818" author="xgen-internal-githook" created="Mon, 13 Mar 2023 19:18:59 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Qingyang Hu&apos;, &apos;email&apos;: &apos;103950869+qingyang-hu@users.noreply.github.com&apos;, &apos;username&apos;: &apos;qingyang-hu&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/GODRIVER-2730&quot; title=&quot;Fix possible deadlock when recovering panic in &amp;quot;Server.update&amp;quot;&quot; class=&quot;issue-link&quot; data-issue-key=&quot;GODRIVER-2730&quot;&gt;&lt;del&gt;GODRIVER-2730&lt;/del&gt;&lt;/a&gt; Remove blocking channel in update recovering. (#1196)&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-go-driver/commit/48a21dbbcc3311297d503f0339f69704bdd07a2b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-go-driver/commit/48a21dbbcc3311297d503f0339f69704bdd07a2b&lt;/a&gt;&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_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_14266" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Documentation Changes Summary</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;1.  What would you like to communicate to the user about this feature?&lt;br/&gt;
2.  Would you like the user to see examples of the syntax and/or executable code and its output?&lt;br/&gt;
3.  Which versions of the driver/connector does this apply to?&lt;/p&gt;</customfieldvalue>

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