<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 06:23:28 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-73036] Investigate potential deadlock with index builds</title>
                <link>https://jira.mongodb.org/browse/SERVER-73036</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;During &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-71198&quot; title=&quot;Assert that unkillable operations that take X collection locks do not hold the RSTL&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-71198&quot;&gt;SERVER-71198&lt;/a&gt; we uncovered that the deadlock described by &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-71191&quot; title=&quot;Deadlock between index build setup, prepared transaction, and stepdown&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-71191&quot;&gt;&lt;del&gt;SERVER-71191&lt;/del&gt;&lt;/a&gt; and &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-44722&quot; title=&quot;3 way deadlock can happen between hybrid index build, prepared transactions and stepdown thread on primary that runs index build via coordinator.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-44722&quot;&gt;&lt;del&gt;SERVER-44722&lt;/del&gt;&lt;/a&gt; could theoretically occur during index cleanup in a rollback.&lt;/p&gt;

&lt;p&gt;Running resmoke with &lt;tt&gt;--suite=replica_sets jstests/replsets/rollback_index_build_start_abort.js&lt;/tt&gt; and the attached patch will yield an invariant error. The following two lines from this backtrace are relevant:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;[js_test:geo_near_bounds_overflow] Fixture status:&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;...&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;[j7:prim] | 2023-01-19T14:29:54.969+00:00 I &#160;CONTROL &#160;31445 &#160; [IndexBuildsCoordinatorMongod-0] &quot;Frame&quot;,&quot;attr&quot;:\{&quot;frame&quot;:{&quot;a&quot;:&quot;7FA8C4FA0649&quot;,&quot;b&quot;:&quot;7FA8C4F56000&quot;,&quot;o&quot;:&quot;4A649&quot;,&quot;s&quot;:&quot;_ZN5mongo22IndexBuildsCoordinator28_cleanUpTwoPhaseAfterFailureEPNS_16OperationContextERKNS_13CollectionPtrESt10shared_ptrINS_19ReplIndexBuildStateEERKNS0_17IndexBuildOptionsERKNS_6StatusE&quot;,&quot;C&quot;:&quot;mongo::IndexBuildsCoordinator::_cleanUpTwoPhaseAfterFailure(mongo::OperationContext*, mongo::CollectionPtr const&amp;amp;, std::shared_ptr&amp;lt;mongo::ReplIndexBuildState&amp;gt;, mongo::IndexBuildsCoordinator::IndexBuildOptions const&amp;amp;, mongo::Status const&amp;amp;)&quot;,&quot;s+&quot;:&quot;1F9&quot;}}&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;[j7:prim] | 2023-01-19T14:29:54.969+00:00 I &#160;CONTROL &#160;31445 &#160; [IndexBuildsCoordinatorMongod-0] &quot;Frame&quot;,&quot;attr&quot;:\{&quot;frame&quot;:{&quot;a&quot;:&quot;7FA8C4FABA07&quot;,&quot;b&quot;:&quot;7FA8C4F56000&quot;,&quot;o&quot;:&quot;55A07&quot;,&quot;s&quot;:&quot;_ZN5mongo22IndexBuildsCoordinator16_setUpIndexBuildEPNS_16OperationContextERKNS_4UUIDENS_9TimestampERKNS0_17IndexBuildOptionsE.cold&quot;,&quot;C&quot;:&quot;mongo::IndexBuildsCoordinator::_setUpIndexBuild(mongo::OperationContext*, mongo::UUID const&amp;amp;, mongo::Timestamp, mongo::IndexBuildsCoordinator::IndexBuildOptions const&amp;amp;) [clone .cold]&quot;,&quot;s+&quot;:&quot;2A5&quot;}}&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;...&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;Symbolization process completed.&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</description>
                <environment></environment>
        <key id="2237301">SERVER-73036</key>
            <summary>Investigate potential deadlock with index builds</summary>
                <type id="3" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14718&amp;avatarType=issuetype">Task</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="josef.ahmad@mongodb.com">Josef Ahmad</assignee>
                                    <reporter username="jordi.olivares-provencio@mongodb.com">Jordi Olivares Provencio</reporter>
                        <labels>
                    </labels>
                <created>Thu, 19 Jan 2023 14:25:53 +0000</created>
                <updated>Sun, 29 Oct 2023 21:27:52 +0000</updated>
                            <resolved>Tue, 28 Mar 2023 16:02:36 +0000</resolved>
                                                    <fixVersion>7.0.0-rc0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>7</watches>
                                                                                                                <comments>
                            <comment id="5306358" author="xgen-internal-githook" created="Tue, 28 Mar 2023 15:53:53 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Josef Ahmad&apos;, &apos;email&apos;: &apos;josef.ahmad@mongodb.com&apos;, &apos;username&apos;: &apos;josefahmad&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-73036&quot; title=&quot;Investigate potential deadlock with index builds&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-73036&quot;&gt;&lt;del&gt;SERVER-73036&lt;/del&gt;&lt;/a&gt; Make killOp on createIndexes interruptible by stepdown&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/058896012d3dc2cffeeb07cbae69d2eab8c278a1&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/058896012d3dc2cffeeb07cbae69d2eab8c278a1&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="5292465" author="josef.ahmad" created="Wed, 22 Mar 2023 15:59:55 +0000"  >&lt;p&gt;The bulk of this issue is resolved as of &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-73294&quot; title=&quot;Signal primary node for aborting index builds on failure&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-73294&quot;&gt;&lt;del&gt;SERVER-73294&lt;/del&gt;&lt;/a&gt;: we &lt;a href=&quot;https://github.com/10gen/mongo/blob/521b53af47740717ac61a6df38ec2f17eba26c2c/src/mongo/db/index_builds_coordinator.cpp#L2611..L2615&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;abort&lt;/a&gt; an index build via the voteAbortIndexBuild command (which loops back if the caller is the primary). Unlike the index build coordinator thread, the voteAbortIndexBuild thread is interruptible by stepdown, eliminating a necessary condition for the deadlock.&lt;/p&gt;

&lt;p&gt;That said, the reproducer shows another positive when running killOp against the user&apos;s createIndexes command. This is because the &lt;a href=&quot;https://github.com/10gen/mongo/blob/521b53af47740717ac61a6df38ec2f17eba26c2c/src/mongo/db/commands/create_indexes_cmd.cpp#L635..L639&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;client is marked as uninterruptible by stepdown&lt;/a&gt;. &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-74657&quot; title=&quot;revisit if thread marked as unkillable is okay to be killable for storage execution related&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-74657&quot;&gt;SERVER-74657&lt;/a&gt; is a related ticket to revisit whether that client (among others) actually needs to be uninterruptible; I&apos;ll figure that out as part of this ticket.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2242915">SERVER-73294</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2282563">SERVER-74657</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2178905">SERVER-71198</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="426869" name="diff.patch" size="9246" author="jordi.olivares-provencio@mongodb.com" created="Thu, 19 Jan 2023 14:26:10 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.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_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25136"><![CDATA[Storage Execution]]></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, 20 Jan 2023 12:43:55 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        45 weeks, 1 day 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-2994</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>
                            45 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>jordi.olivares-provencio@mongodb.com</customfieldvalue>
            <customfieldvalue>josef.ahmad@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i1rbof:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i19u5k:</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_22250" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Special Downgrade Instructions Required</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="23343"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="6819">Execution Team 2023-04-03</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|i1qxtr:</customfieldvalue>

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