<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:35:27 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-55098] [SBE] jstests/noPassthrough/read_majority.js hangs indefinitely</title>
                <link>https://jira.mongodb.org/browse/SERVER-55098</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description></description>
                <environment></environment>
        <key id="1644898">SERVER-55098</key>
            <summary>[SBE] jstests/noPassthrough/read_majority.js hangs indefinitely</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="justin.seyster@mongodb.com">Justin Seyster</assignee>
                                    <reporter username="mihai.andrei@mongodb.com">Mihai Andrei</reporter>
                        <labels>
                    </labels>
                <created>Tue, 9 Mar 2021 20:59:48 +0000</created>
                <updated>Sun, 29 Oct 2023 21:56:29 +0000</updated>
                            <resolved>Sun, 18 Apr 2021 23:26:17 +0000</resolved>
                                                    <fixVersion>5.0.0-rc0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="3723623" author="xgen-internal-githook" created="Sat, 17 Apr 2021 01:44:50 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Justin Seyster&apos;, &apos;email&apos;: &apos;justin.seyster@mongodb.com&apos;, &apos;username&apos;: &apos;jseyster&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-55098&quot; title=&quot;[SBE] jstests/noPassthrough/read_majority.js hangs indefinitely&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-55098&quot;&gt;&lt;del&gt;SERVER-55098&lt;/del&gt;&lt;/a&gt; read_majority.js test fixup&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/46f91e5bd299bdfb6618c3fe8a82df68eadd30b8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/46f91e5bd299bdfb6618c3fe8a82df68eadd30b8&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3721653" author="justin.seyster" created="Fri, 16 Apr 2021 00:34:53 +0000"  >&lt;p&gt;An update to the update: The difference between the classic executor and SBE that results in the hang is that the classic executor acquires its&#160;&lt;br/&gt;
AutoGetCollectionForReadMaybeLockFree using just the collection&apos;s NamespaceString, whereas SBE uses a NamespaceStringOrUUID that is populated with&#160;&lt;em&gt;both&lt;/em&gt;. I don&apos;t know the details as to why, but passing the UUID to the locking function causes it to wait for the next snapshot. I&#160;&lt;em&gt;think&lt;/em&gt; that when locking by just the name, the locking functions don&apos;t know about the rename and so don&apos;t know that they should wait for the rename to be majority committed before proceeding. Regardless, the query engine eventually discovers the rename and bails, so this case is still covered.&lt;br/&gt;
The lock acquisition that Mihai&apos;s patch adds is also by namespace only, which is why that patch stops this test from waiting indefinitely.&lt;/p&gt;</comment>
                            <comment id="3721254" author="justin.seyster" created="Thu, 15 Apr 2021 20:19:57 +0000"  >&lt;p&gt;An update on this: Mihai&apos;s proposed fix for&#160;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-55658&quot; title=&quot;Out-of-order destruction of AutoGet* objects can lead to transaction closure&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-55658&quot;&gt;&lt;del&gt;SERVER-55658&lt;/del&gt;&lt;/a&gt; also fixes this hang. I have absolutely no idea why! Regardless, I don&apos;t see any evidence of incorrect behavior with or without that fix, so I&apos;d say there&apos;s nothing more to do here.&lt;/p&gt;

&lt;p&gt;I&apos;ll figure out how to clean up the red herring &quot;isIxscan&quot; failures, and we should be able to call this one good.&lt;/p&gt;</comment>
                            <comment id="3719633" author="justin.seyster" created="Thu, 15 Apr 2021 00:01:47 +0000"  >&lt;p&gt;After some time investigating, I have a rough handle one why we&apos;re seeing this behavior. The most important data point, though, is in the comments:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/7590a2807ec192957ae00c2e72d171d4da3ab2b2/jstests/noPassthrough/read_majority.js#L202-L205&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/blob/7590a2807ec192957ae00c2e72d171d4da3ab2b2/jstests/noPassthrough/read_majority.js#L202-L205&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;For this operation, timing out is actually desired behavior. It seems this test is failing because SBE is doing a better job. I think the best move will be to modify this test so that both the classic behavior (returning an empty results set) and the SBE behavior (timing out) pass the test.&lt;/p&gt;</comment>
                            <comment id="3692514" author="martin.neupauer" created="Tue, 30 Mar 2021 21:06:12 +0000"  >&lt;p&gt;However, all the explain related failures are simple red herring. When I manually disable those asserts then we nicely hang.&lt;/p&gt;</comment>
                            <comment id="3692495" author="martin.neupauer" created="Tue, 30 Mar 2021 21:01:38 +0000"  >&lt;p&gt;It is not hanging on me.&lt;/p&gt;

&lt;p&gt;However, it fails with this assert&#160;&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;   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;assert(isIxscan(db, getExplainPlan(\{version: 1})));&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;&lt;/p&gt;

&lt;p&gt;That does not make sense as the explain looks like this (i.e. it contains IXSCAN):&lt;/p&gt;

&lt;p&gt;{{{{ &quot;queryPlan&quot; : { &quot;stage&quot; : &quot;FETCH&quot;, &quot;planNodeId&quot; : 2, &quot;inputStage&quot; : { &quot;stage&quot; : &quot;IXSCAN&quot;, &quot;planNodeId&quot; : 1, &quot;keyPattern&quot; : &lt;/p&gt;
{ &quot;version&quot; : 1 }
&lt;p&gt;, &quot;indexName&quot; : &quot;version_1&quot;, &quot;isMultiKey&quot; : false, &quot;multiKeyPaths&quot; : { &quot;version&quot; : [ ] }, &quot;isUnique&quot; : false, &quot;isSparse&quot; : false, &quot;isPartial&quot; : false, &quot;indexVersion&quot; : 2, &quot;direction&quot; : &quot;forward&quot;, &quot;indexBounds&quot; : { &quot;version&quot; : [ &quot;&lt;span class=&quot;error&quot;&gt;&amp;#91;1.0, 1.0&amp;#93;&lt;/span&gt;&quot; ] } } }, &quot;slotBasedPlan&quot; : { &quot;slots&quot; : &quot;$$RESULT=s5 $$RID=s6 env: &lt;/p&gt;
{ timeZoneDB = s1 (TimeZoneDatabase(America/Porto_Velho...Eire)) }
&lt;p&gt;&quot;, &quot;stages&quot; : &quot;&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt; nlj [] &lt;span class=&quot;error&quot;&gt;&amp;#91;s2&amp;#93;&lt;/span&gt;&#160;&#160; &#160; left&#160;&#160; &#160; &#160; &#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt; nlj [] &lt;span class=&quot;error&quot;&gt;&amp;#91;s3, s4&amp;#93;&lt;/span&gt;&#160;&#160; &#160; &#160; &#160; &#160; &#160; left&#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt; project &lt;span class=&quot;error&quot;&gt;&amp;#91;s3 = KS(2B020104), s4 = KS(2B02FE04)&amp;#93;&lt;/span&gt;&#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt; limit 1&#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt; coscan&#160;&#160; &#160; &#160; &#160; &#160; &#160; right&#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt; ixseek s3 s4 s2 [] @\&quot;80ae21a1-c3e1-4080-9d4e-df77e2ed0f23\&quot; @\&quot;version_1\&quot; true&#160;&#160; &#160; &#160; &#160; &#160; &#160;&#160;&#160; &#160; &#160; &#160;&#160;&#160; &#160; right&#160;&#160; &#160; &#160; &#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt; limit 1&#160;&#160; &#160; &#160; &#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt; seek s2 s5 s6 [] @\&quot;80ae21a1-c3e1-4080-9d4e-df77e2ed0f23\&quot; true&#160;&#160; &#160;&#160;&quot; }}}}&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>6.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_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>Tue, 30 Mar 2021 21:01:38 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 42 weeks, 5 days 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-1829</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, 42 weeks, 5 days ago
                        </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>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>justin.seyster@mongodb.com</customfieldvalue>
            <customfieldvalue>martin.neupauer@mongodb.com</customfieldvalue>
            <customfieldvalue>mihai.andrei@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hyysh3:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hyk24v:</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="4468">Query Execution 2021-04-05</customfieldvalue>
    <customfieldvalue id="4470">Query Execution 2021-04-19</customfieldvalue>
    <customfieldvalue id="4472">Query Execution 2021-05-03</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10750" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Steps To Reproduce</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;buildscripts/resmoke.py --suites=no_passthrough --mongodSetParameters=&apos;{featureFlagSBE: true}&apos; jstests/noPassthrough/read_majority.js&lt;/p&gt;</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|hyyeq7:</customfieldvalue>

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