<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:32:55 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>[SERVER-54208] Remove blocking call to Fetcher::join from TenantMigrationDonorService</title>
                <link>https://jira.mongodb.org/browse/SERVER-54208</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;I was looking at the TenantMigrationDonorService for other reasons and I noticed that in one of the future continuations we &lt;a href=&quot;https://github.com/mongodb/mongo/blob/26ecc0880280ada1b9f77b3f07544843e50e3088/src/mongo/db/repl/tenant_migration_donor_service.cpp#L347-L366&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;use the blocking API&lt;/a&gt; of the &lt;a href=&quot;https://github.com/mongodb/mongo/blob/b49345b43230e21fecef17e82fe00029dfc9fdee/src/mongo/client/fetcher.h#L51&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Fetcher class&lt;/a&gt; to do networking. This could be a problem if running in a thread pool with a fixed number of threads.&lt;/p&gt;

&lt;p&gt;Fixing this depends on making a non-blocking version of the Fetcher API (&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-54206&quot; title=&quot;Create a non-blocking API for the Fetcher class (or create an alternate class)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-54206&quot;&gt;&lt;del&gt;SERVER-54206&lt;/del&gt;&lt;/a&gt;).&lt;/p&gt;</description>
                <environment></environment>
        <key id="1609057">SERVER-54208</key>
            <summary>Remove blocking call to Fetcher::join from TenantMigrationDonorService</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="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="jason.zhang@mongodb.com">Jason Zhang</assignee>
                                    <reporter username="matthew.saltz@mongodb.com">Matthew Saltz</reporter>
                        <labels>
                    </labels>
                <created>Tue, 2 Feb 2021 15:36:36 +0000</created>
                <updated>Sun, 29 Oct 2023 21:58:07 +0000</updated>
                            <resolved>Thu, 5 Aug 2021 19:02:14 +0000</resolved>
                                                    <fixVersion>5.1.0-rc0</fixVersion>
                                                        <votes>1</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="4108369" author="JIRAUSER1259052" created="Wed, 6 Oct 2021 19:05:11 +0000"  >&lt;p&gt;Updating the fixversion since branching activities occurred yesterday. This ticket will be in rc0 when it&#8217;s been triggered. For more active release information, please keep an eye on #server-release. Thank you!&lt;/p&gt;</comment>
                            <comment id="4072601" author="xgen-internal-githook" created="Mon, 20 Sep 2021 20:11:22 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Jason Zhang&apos;, &apos;email&apos;: &apos;jason.zhang@mongodb.com&apos;, &apos;username&apos;: &apos;jz1242&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-54206&quot; title=&quot;Create a non-blocking API for the Fetcher class (or create an alternate class)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-54206&quot;&gt;&lt;del&gt;SERVER-54206&lt;/del&gt;&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-54208&quot; title=&quot;Remove blocking call to Fetcher::join from TenantMigrationDonorService&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-54208&quot;&gt;&lt;del&gt;SERVER-54208&lt;/del&gt;&lt;/a&gt; Create a non-blocking API for the Fetcher class (or create an alternate class)&lt;/p&gt;

&lt;p&gt;(cherry picked from commit 1f8ccdbff6715cbeb214d5b107f9598e5aeeb5e6)&lt;br/&gt;
Branch: v5.0&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/d8d2e781f11b8c304e15960d88d31592c2d1bd26&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/d8d2e781f11b8c304e15960d88d31592c2d1bd26&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3983798" author="xgen-internal-githook" created="Thu, 5 Aug 2021 18:59:35 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Jason Zhang&apos;, &apos;email&apos;: &apos;jason.zhang@mongodb.com&apos;, &apos;username&apos;: &apos;jz1242&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-54206&quot; title=&quot;Create a non-blocking API for the Fetcher class (or create an alternate class)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-54206&quot;&gt;&lt;del&gt;SERVER-54206&lt;/del&gt;&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-54208&quot; title=&quot;Remove blocking call to Fetcher::join from TenantMigrationDonorService&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-54208&quot;&gt;&lt;del&gt;SERVER-54208&lt;/del&gt;&lt;/a&gt; Create a non-blocking API for the Fetcher class (or create an alternate class)&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/1f8ccdbff6715cbeb214d5b107f9598e5aeeb5e6&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/1f8ccdbff6715cbeb214d5b107f9598e5aeeb5e6&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3960527" author="JIRAUSER1256988" created="Fri, 23 Jul 2021 18:40:15 +0000"  >&lt;p&gt;I added 2 BFs blocked by this change.&lt;/p&gt;</comment>
                            <comment id="3852070" author="jack.mulrow" created="Tue, 1 Jun 2021 18:42:46 +0000"  >&lt;p&gt;This ticket isn&apos;t required for PM-1791, so moving it out of the project.&lt;/p&gt;</comment>
                            <comment id="3652560" author="jack.mulrow" created="Mon, 8 Mar 2021 18:01:39 +0000"  >&lt;p&gt;After looking at this again, the fetcher uses a per instance thread pool, but the blocking wait happens on the shared service thread pool, so my earlier comment was incorrect.&lt;/p&gt;</comment>
                            <comment id="3614564" author="matthew.saltz" created="Fri, 12 Feb 2021 20:06:06 +0000"  >&lt;p&gt;Got it, thanks for looking into it!&lt;/p&gt;</comment>
                            <comment id="3614449" author="jack.mulrow" created="Fri, 12 Feb 2021 19:19:41 +0000"  >&lt;p&gt;The blocking call does happen in a &lt;a href=&quot;https://github.com/mongodb/mongo/blob/2dd18531e61234f23dfb9f906572c5a21a805d6b/src/mongo/db/repl/tenant_migration_donor_service.h#L226&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;fixed size&lt;/a&gt;&#160;thread pool, but it&apos;s a pool that is &lt;a href=&quot;https://github.com/mongodb/mongo/blob/2dd18531e61234f23dfb9f906572c5a21a805d6b/src/mongo/db/repl/tenant_migration_donor_service.cpp#L135&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;exclusively owned by a single tenant migration donor service instance&lt;/a&gt;&#160;and only used sequentially in the main future chain for driving a migration (for the fetcher call and to send recipientSyncData and recipientForgetMigration), so while the thread is blocked, there shouldn&apos;t be other work that is unable to run. Because of this, I don&apos;t think this change would impact the correctness of the donor service, so I don&apos;t think it&apos;s worth doing at this time and I&apos;m closing this as Won&apos;t Do.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="1609055">SERVER-54206</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="1657956">SERVER-55496</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1589212">SERVER-53761</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_12450" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Backport Requested</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="21777"><![CDATA[v5.0]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10011" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Backwards Compatibility</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10038"><![CDATA[Fully Compatible]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 12 Feb 2021 19:19:41 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 18 weeks ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[<s><a href='https://jira.mongodb.org/browse/SERVER-54206'>SERVER-54206</a></s>]]></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_17050" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Downstream Team Attention</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="16941"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            2 years, 18 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>34.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>andrew.shuvalov@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>jack.mulrow@mongodb.com</customfieldvalue>
            <customfieldvalue>jason.zhang@mongodb.com</customfieldvalue>
            <customfieldvalue>matthew.saltz@mongodb.com</customfieldvalue>
            <customfieldvalue>vivian.ge@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hysqvj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hyvpaf:</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>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="4521">Sharding 2021-07-12</customfieldvalue>
    <customfieldvalue id="4522">Sharding 2021-07-26</customfieldvalue>
    <customfieldvalue id="5218">Sharding 2021-08-09</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hysd4n:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>