<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:54:43 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-62293] Race between recipientForgetMigration cmd and TenantMigrationRecipientService future chain restart on errors machinery.</title>
                <link>https://jira.mongodb.org/browse/SERVER-62293</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;recipientForgetMigration cmd before waiting for the &lt;a href=&quot;https://github.com/mongodb/mongo/blob/7cd33fd62218a277846f8766116a5d7e795c9908/src/mongo/db/commands/tenant_migration_recipient_cmds.cpp#L229&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;task completion promise&lt;/a&gt;, it will &lt;a href=&quot;https://github.com/mongodb/mongo/blob/7cd33fd62218a277846f8766116a5d7e795c9908/src/mongo/db/commands/tenant_migration_recipient_cmds.cpp#L228&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;try to interrupt&lt;/a&gt; the TenantMigrationRecipient instance. But if it is already in the interrupted state, recipientForgetMigration cmd will &lt;a href=&quot;https://github.com/mongodb/mongo/blob/7cd33fd62218a277846f8766116a5d7e795c9908/src/mongo/db/repl/tenant_migration_recipient_service.cpp#L2095-L2098&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;skip interrupt&lt;/a&gt; and starts to wait for the task completion promise to get fulfilled. However, if the original interrupt status is &lt;a href=&quot;https://github.com/mongodb/mongo/blob/7cd33fd62218a277846f8766116a5d7e795c9908/src/mongo/db/repl/tenant_migration_recipient_service.cpp#L2694-L2719&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;retryable error code&lt;/a&gt;, we would reset the task state to &lt;a href=&quot;https://github.com/mongodb/mongo/blob/7cd33fd62218a277846f8766116a5d7e795c9908/src/mongo/db/repl/tenant_migration_recipient_service.cpp#L2699&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&quot;running&quot;&lt;/a&gt;, clear interrupt status &amp;amp; restart the TenantMigrationRecipientService future chain. As a result of restart, the task completion promise for that recipient instance won&apos;t get fulfilled  (unless the node steps down or shuts down or receives another recipientForgetMigration cmd), leading to the recipientForgetMigration cmd hang.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1956760">SERVER-62293</key>
            <summary>Race between recipientForgetMigration cmd and TenantMigrationRecipientService future chain restart on errors machinery.</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="suganthi.mani@mongodb.com">Suganthi Mani</assignee>
                                    <reporter username="suganthi.mani@mongodb.com">Suganthi Mani</reporter>
                        <labels>
                    </labels>
                <created>Tue, 28 Dec 2021 23:30:11 +0000</created>
                <updated>Sun, 29 Oct 2023 21:44:38 +0000</updated>
                            <resolved>Wed, 19 Jan 2022 11:24:07 +0000</resolved>
                                                    <fixVersion>5.3.0</fixVersion>
                    <fixVersion>5.2.2</fixVersion>
                                                        <votes>0</votes>
                                    <watches>6</watches>
                                                                                                                <comments>
                            <comment id="4359816" author="xgen-internal-githook" created="Wed, 16 Feb 2022 19:57:15 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Suganthi Mani&apos;, &apos;email&apos;: &apos;suganthi.mani@mongodb.com&apos;, &apos;username&apos;: &apos;smani87&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-62293&quot; title=&quot;Race between recipientForgetMigration cmd and TenantMigrationRecipientService future chain restart on errors machinery.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-62293&quot;&gt;&lt;del&gt;SERVER-62293&lt;/del&gt;&lt;/a&gt; Fix race between recipientForgetMigration cmd and TenantMigrationRecipientService future chain restart on errors machinery.&lt;/p&gt;

&lt;p&gt;(cherry picked from commit e3cf73fe6b96476518f7ab7c1dfb36f10597589b)&lt;br/&gt;
Branch: v5.2&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/6c93be45cd4869ab0a0f4d8132dee4fd8571dcb8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/6c93be45cd4869ab0a0f4d8132dee4fd8571dcb8&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4299795" author="xgen-internal-githook" created="Wed, 19 Jan 2022 11:18:54 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Suganthi Mani&apos;, &apos;email&apos;: &apos;suganthi.mani@mongodb.com&apos;, &apos;username&apos;: &apos;smani87&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-62293&quot; title=&quot;Race between recipientForgetMigration cmd and TenantMigrationRecipientService future chain restart on errors machinery.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-62293&quot;&gt;&lt;del&gt;SERVER-62293&lt;/del&gt;&lt;/a&gt; Fix race between recipientForgetMigration cmd and TenantMigrationRecipientService future chain restart on errors machinery.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/e3cf73fe6b96476518f7ab7c1dfb36f10597589b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/e3cf73fe6b96476518f7ab7c1dfb36f10597589b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4285519" author="jesse" created="Tue, 11 Jan 2022 14:28:41 +0000"  >&lt;p&gt;Then I&apos;ll assign it to you, &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=suganthi.mani&quot; class=&quot;user-hover&quot; rel=&quot;suganthi.mani&quot;&gt;suganthi.mani&lt;/a&gt;, please do it on the next BF Friday.&lt;/p&gt;</comment>
                            <comment id="4284952" author="suganthi.mani" created="Tue, 11 Jan 2022 06:39:29 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jesse&quot; class=&quot;user-hover&quot; rel=&quot;jesse&quot;&gt;jesse&lt;/a&gt; pretty small fix, 1-2 lines of  server code changes  (+ add a test ???)&lt;/p&gt;</comment>
                            <comment id="4284664" author="jesse" created="Tue, 11 Jan 2022 01:39:10 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=suganthi.mani&quot; class=&quot;user-hover&quot; rel=&quot;suganthi.mani&quot;&gt;suganthi.mani&lt;/a&gt;&#160;can you estimate the time to implement your proposed fix, please?&lt;/p&gt;</comment>
                            <comment id="4284188" author="esha.maharishi@10gen.com" created="Mon, 10 Jan 2022 20:39:52 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=suganthi.mani&quot; class=&quot;user-hover&quot; rel=&quot;suganthi.mani&quot;&gt;suganthi.mani&lt;/a&gt; to triage with &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jesse&quot; class=&quot;user-hover&quot; rel=&quot;jesse&quot;&gt;jesse&lt;/a&gt; and &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=christopher.caplinger&quot; class=&quot;user-hover&quot; rel=&quot;christopher.caplinger&quot;&gt;christopher.caplinger&lt;/a&gt; against other Shard Merge work tomorrow.&lt;/p&gt;</comment>
                            <comment id="4269493" author="suganthi.mani" created="Wed, 29 Dec 2021 07:08:30 +0000"  >&lt;p&gt;&lt;b&gt;Proposed Fix:&lt;/b&gt;&lt;br/&gt;
 My proposal is that we shouldn&apos;t retry the&#160;TenantMigrationRecipientService future chain if the&lt;br/&gt;
 &lt;a href=&quot;https://github.com/mongodb/mongo/blob/7cd33fd62218a277846f8766116a5d7e795c9908/src/mongo/db/repl/tenant_migration_recipient_service.cpp#L2149&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;_receivedRecipientForgetMigrationPromise&lt;/a&gt; is fulfilled(ready), even if the original interrupt status is a&#160;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/7cd33fd62218a277846f8766116a5d7e795c9908/src/mongo/db/repl/tenant_migration_recipient_service.cpp#L2694-L2695&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;retryable&lt;/a&gt; error.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>7.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_12450" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Backport Requested</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="22676"><![CDATA[v5.2]]></customfieldvalue>
    <customfieldvalue key="22495"><![CDATA[v5.1]]></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>Mon, 10 Jan 2022 20:39:52 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        1 year, 51 weeks ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></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>
                            1 year, 51 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>126.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10032" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Operating System</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10026"><![CDATA[ALL]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>jesse@mongodb.com</customfieldvalue>
            <customfieldvalue>esha.maharishi@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>suganthi.mani@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i0fmxb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hzytov:</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_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="5671">Server Serverless 2022-01-24</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|i0f92n:</customfieldvalue>

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