<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:05:35 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-44294] Cap runtime of generated tasks</title>
                <link>https://jira.mongodb.org/browse/SERVER-44294</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;When an engineer tries to repro a test failure, they sometimes add a large &lt;tt&gt;resmoke_repeat_suites&lt;/tt&gt; number to evergreen.yml. This causes generated tasks to compute a large Evergreen timeout and potentially leaving a host running for a long time.&lt;/p&gt;

&lt;p&gt;We should cap the runtime of generated tasks and either error out and inform the user of the max repeat number they can use, or interally reduce the repeat count to a smaller number.&lt;/p&gt;

&lt;p&gt;Almost always, if an issue fails to repro after 48 hours, it&apos;s unlikely for the repro to happen at all. This can indicate a bug with the way the repro is set up, or something wrong with the machine the original failure occurred on.&lt;/p&gt;

&lt;p&gt;AC:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Fails tasks that we expect to run over the specified time limit.&lt;/li&gt;
	&lt;li&gt;Provide a message to the user explaining why that task was failed and what they can do if they want to work around it.&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="982087">SERVER-44294</key>
            <summary>Cap runtime of generated tasks</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="13201">Fixed</resolution>
                                        <assignee username="david.bradford@mongodb.com">David Bradford</assignee>
                                    <reporter username="robert.guo@mongodb.com">Robert Guo</reporter>
                        <labels>
                    </labels>
                <created>Tue, 29 Oct 2019 14:08:17 +0000</created>
                <updated>Sun, 29 Oct 2023 22:15:37 +0000</updated>
                            <resolved>Mon, 2 Dec 2019 22:25:46 +0000</resolved>
                                    <version>4.3.1</version>
                                    <fixVersion>4.3.3</fixVersion>
                                    <component>Testing Infrastructure</component>
                                        <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="2575668" author="xgen-internal-githook" created="Mon, 2 Dec 2019 22:23:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;david.bradford@mongodb.com&apos;, &apos;name&apos;: &apos;David Bradford&apos;, &apos;username&apos;: &apos;dbradf&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-44294&quot; title=&quot;Cap runtime of generated tasks&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-44294&quot;&gt;&lt;del&gt;SERVER-44294&lt;/del&gt;&lt;/a&gt;: Cap runtime of generated tasks&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/4042edbdbea9ef9572e96adfc75b3e3f08b1bdde&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/4042edbdbea9ef9572e96adfc75b3e3f08b1bdde&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2547632" author="robert.guo" created="Mon, 18 Nov 2019 20:26:43 +0000"  >&lt;p&gt;My intention was really just to prevent a single task from taking up all the Evergreen hosts for a week, which hopefully would be a rather quick fix / sanity check. Here&apos;s my 2c in response to David&apos;s questions; hopefully it&apos;ll clarify what I wanted to say:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Do we want to limit by runtime, limit by number of iterations, or something else?&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;We want to limit by runtime. Limiting by iteration is arguably more reasonable but many tests (e.g. concurrency) iterate sub-tests themselves, so resmoke doesn&apos;t know what the &quot;real&quot; iteration is.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;If the user is going to hit the limit, what should we do:&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Any solution works. We can run up to the limit and tell the user loudly at the end that the limit has been reduced. Like I said earlier, no tests repro after 48 hours. So if we set the limit to 48 hours and nothing repros, we can assume the test won&apos;t repro ever.&lt;/p&gt;

&lt;p&gt;We can also error out early when we generate the tasks and tell users to reduce the number of iterations with a recommended number that will be below the 48 hour limit.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Should we allow users someway to override the limit in certain cases&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;No. Until someone complains, then feel free to direct them to STM. There&apos;s something wrong if a repro takes more than 48 hours.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;We should also chat with evergreen to see if they have any input as to what the limitation should be&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;There are projects that are not mongodb-mongo-* that legitimately run things for more than 48 hours, so I&apos;m not sure if a limit should be enforced system-wide in Evergreen.&lt;/p&gt;</comment>
                            <comment id="2547577" author="david.bradford" created="Mon, 18 Nov 2019 19:59:31 +0000"  >&lt;p&gt;I think there should be some investigation of what we actually want to do here. Do we want to limit by runtime, limit by number of iterations, or something else? If the user is going to hit the limit, what should we do: fail the task, run the task up to the limit and success, something else? Should we allow users someway to override the limit in certain cases. We should also chat with evergreen to see if they have any input as to what the limitation should be. &lt;/p&gt;</comment>
                            <comment id="2514371" author="robert.guo" created="Fri, 1 Nov 2019 17:13:24 +0000"  >&lt;p&gt;This one: &lt;a href=&quot;https://evergreen.mongodb.com/version/5dae11857742ae6afd907006&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://evergreen.mongodb.com/version/5dae11857742ae6afd907006&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2514295" author="david.bradford" created="Fri, 1 Nov 2019 16:27:04 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=robert.guo&quot; class=&quot;user-hover&quot; rel=&quot;robert.guo&quot;&gt;robert.guo&lt;/a&gt; Do you have an example of a patch where this happened you could link to?&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>5.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_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, 1 Nov 2019 16:27:04 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 10 weeks, 2 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_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>
                            4 years, 10 weeks, 2 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>david.bradford@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>robert.guo@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hvzf87:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr73n3:</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="3361">DAG 2019-12-16</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10555" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.0</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|hvz1hj:</customfieldvalue>

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