<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:20:26 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-29299] remove evalc.js and add currentOp to basicPlus.js&apos;s background operations.</title>
                <link>https://jira.mongodb.org/browse/SERVER-29299</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;This test was created to test a race condition between the currentOp and count commands. The potential for a race exists between currentOp and all commands, so we should remove this test and add a currentOp to the set of operations performed by a background thread during basicPlus.js&lt;/p&gt;

&lt;h5&gt;&lt;a name=&quot;OriginalDescription&quot;&gt;&lt;/a&gt;Original Description&lt;/h5&gt;
&lt;p&gt;&lt;tt&gt;jstests/core/evalc.js&lt;/tt&gt; &lt;a href=&quot;https://github.com/mongodb/mongo/blob/r3.5.7/jstests/core/evalc.js#L23&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;uses an &lt;tt&gt;assert.soon&lt;/tt&gt;&lt;/a&gt; to wait for &lt;a href=&quot;https://github.com/mongodb/mongo/blob/r3.5.7/jstests/core/evalc.js#L20&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;another thread to complete a ton of calls to &lt;tt&gt;db.currentOp()&lt;/tt&gt; before finally inserting a sentinel&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/r3.5.7/jstests/core/evalc.js&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;The test&lt;/a&gt; mentions &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1610&quot; title=&quot;curop seg fault&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1610&quot;&gt;&lt;del&gt;SERVER-1610&lt;/del&gt;&lt;/a&gt;, which appears to be some sort of race between an operation and the curOp command. This could perhaps be tested with an fsm test instead, since the failure scenario was a crash. This would also provide test coverage for related tickets &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-12497&quot; title=&quot;role_management_helpers and user_management_helpers deadlocked with eval&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-12497&quot;&gt;&lt;del&gt;SERVER-12497&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16506&quot; title=&quot;race condition in currentOp&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16506&quot;&gt;&lt;del&gt;SERVER-16506&lt;/del&gt;&lt;/a&gt;, and &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19143&quot; title=&quot;race in setting OpDebug ns can cause invalid BSON to be returned from currentOp command&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19143&quot;&gt;&lt;del&gt;SERVER-19143&lt;/del&gt;&lt;/a&gt;, which all had failure scenarios that could be detected by the fsm framework. It looks like the fact that the count command was executed using &lt;tt&gt;db.eval()&lt;/tt&gt; was important for triggering &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-12947&quot; title=&quot;Dont use MultipleErrorsOccurred path if all errors are the same&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-12947&quot;&gt;&lt;del&gt;SERVER-12947&lt;/del&gt;&lt;/a&gt;, so we should probably include something like that in the new test.&lt;/p&gt;

&lt;p&gt;Note we already have test coverage for the correctness of the currentOp output in &lt;a href=&quot;https://github.com/mongodb/mongo/blob/r3.5.7/jstests/noPassthrough/currentop_query.js&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;jstests/core/currentOp_query.js&lt;/tt&gt;&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="385116">SERVER-29299</key>
            <summary>remove evalc.js and add currentOp to basicPlus.js&apos;s background operations.</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="charlie.swanson@mongodb.com">Charlie Swanson</assignee>
                                    <reporter username="charlie.swanson@mongodb.com">Charlie Swanson</reporter>
                        <labels>
                    </labels>
                <created>Fri, 19 May 2017 16:18:42 +0000</created>
                <updated>Mon, 30 Oct 2023 23:16:38 +0000</updated>
                            <resolved>Tue, 18 Jul 2017 21:00:28 +0000</resolved>
                                                    <fixVersion>3.4.7</fixVersion>
                    <fixVersion>3.5.11</fixVersion>
                                    <component>Querying</component>
                                        <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="1626808" author="xgen-internal-githook" created="Wed, 19 Jul 2017 20:36:13 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;cswanson310&apos;, u&apos;name&apos;: u&apos;Charlie Swanson&apos;, u&apos;email&apos;: u&apos;charlie.swanson@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-29299&quot; title=&quot;remove evalc.js and add currentOp to basicPlus.js&amp;#39;s background operations.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-29299&quot;&gt;&lt;del&gt;SERVER-29299&lt;/del&gt;&lt;/a&gt; Add currentOp as parallel op during basicPlus.js&lt;br/&gt;
Branch: v3.4&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/2a8317c052e8a5e44a8816796b6201f30bcd8bfa&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/2a8317c052e8a5e44a8816796b6201f30bcd8bfa&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1625778" author="charlie.swanson" created="Tue, 18 Jul 2017 22:05:41 +0000"  >&lt;p&gt;updated original description to match what we actually did.&lt;/p&gt;</comment>
                            <comment id="1625620" author="xgen-internal-githook" created="Tue, 18 Jul 2017 20:18:04 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;cswanson310&apos;, u&apos;name&apos;: u&apos;Charlie Swanson&apos;, u&apos;email&apos;: u&apos;charlie.swanson@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-29299&quot; title=&quot;remove evalc.js and add currentOp to basicPlus.js&amp;#39;s background operations.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-29299&quot;&gt;&lt;del&gt;SERVER-29299&lt;/del&gt;&lt;/a&gt; Add currentOp as parallel op during basicPlus.js&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/4140c9b64962ecc4c1520f608e3c3085ec4529f8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/4140c9b64962ecc4c1520f608e3c3085ec4529f8&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1622177" author="ian@10gen.com" created="Fri, 14 Jul 2017 14:51:55 +0000"  >&lt;p&gt;Leaving in Needs Triage pending review of all underlying build failures to see if they actually tie back to this solution.&lt;/p&gt;</comment>
                            <comment id="1576792" author="max.hirschhorn@10gen.com" created="Mon, 22 May 2017 16:32:11 +0000"  >&lt;blockquote&gt;
&lt;p&gt;Perhaps we can add currentOp commands to the &apos;plus&apos; part of basicPlus?&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;That&apos;s exactly what I&apos;m thinking we should do. We&apos;d want to add &lt;a href=&quot;https://github.com/mongodb/mongo/blob/r3.5.7/jstests/libs/parallelTester.js#L55-L92&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;an &lt;tt&gt;EventGenerator&lt;/tt&gt; method&lt;/a&gt; that runs the &quot;currentOp&quot; command.&lt;/p&gt;</comment>
                            <comment id="1576743" author="charlie.swanson" created="Mon, 22 May 2017 16:00:13 +0000"  >&lt;p&gt;Perhaps we can add &lt;tt&gt;currentOp&lt;/tt&gt; commands to the &apos;plus&apos; part of basicPlus? I&apos;m not sure how any of that works, but I thought the point of &apos;basicPlus&apos; was to run all the core tests (in parallel) while doing other things that might cause race conditions, deadlocks, etc.&lt;/p&gt;</comment>
                            <comment id="1576084" author="max.hirschhorn@10gen.com" created="Sat, 20 May 2017 20:02:15 +0000"  >&lt;p&gt;The concurrency tests don&apos;t run the entire variety of MongoDB commands that tests in the &lt;tt&gt;jstests/core/&lt;/tt&gt; directory do. Given the race conditions related to the &quot;currentOp&quot; command in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-12497&quot; title=&quot;role_management_helpers and user_management_helpers deadlocked with eval&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-12497&quot;&gt;&lt;del&gt;SERVER-12497&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16506&quot; title=&quot;race condition in currentOp&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16506&quot;&gt;&lt;del&gt;SERVER-16506&lt;/del&gt;&lt;/a&gt;, and &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-19143&quot; title=&quot;race in setting OpDebug ns can cause invalid BSON to be returned from currentOp command&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-19143&quot;&gt;&lt;del&gt;SERVER-19143&lt;/del&gt;&lt;/a&gt;, I think we would also benefit from running &lt;tt&gt;currentOp()&lt;/tt&gt; repeatedly in the background during &lt;tt&gt;basicPlus.js&lt;/tt&gt; to avoid losing coverage after rewriting the &lt;tt&gt;evalc.js&lt;/tt&gt; test as an FSM workload.&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="14340"><![CDATA[v3.4]]></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>Sat, 20 May 2017 20:02:15 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        6 years, 30 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_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>
                            6 years, 30 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>charlie.swanson@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>ian@mongodb.com</customfieldvalue>
            <customfieldvalue>max.hirschhorn@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|ht7p2v:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hra1nz:</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="1798">Query 2017-07-31</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|ht6fav:</customfieldvalue>

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