<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:53:24 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-39883] Powercycle doesn&apos;t actually wait for the mongod process to exit during shutdown_mongod</title>
                <link>https://jira.mongodb.org/browse/SERVER-39883</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;The &quot;shutdown_mongod&quot; action runs the {&lt;tt&gt;shutdown: 1, force: true&lt;/tt&gt;} command and then (on Linux) waits for &lt;tt&gt;psutil&lt;/tt&gt; to say no processes with the name &quot;mongod&quot; exist. &lt;a href=&quot;https://github.com/mongodb/mongo/blob/8b4f0a7893a329b0c0370385180d6a13077a8f22/pytests/powertest.py#L1481-L1483&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;The &lt;tt&gt;wait_for_mongod_shutdown()&lt;/tt&gt; function then sleeps an arbitrary extra 5 seconds&lt;/a&gt; in order to wait for any pending I/O to finish. It possible for 5 seconds to not be long enough where a file will disappear when running &lt;tt&gt;rsync&lt;/tt&gt; or the mongod process will fail to start.&lt;/p&gt;</description>
                <environment></environment>
        <key id="706394">SERVER-39883</key>
            <summary>Powercycle doesn&apos;t actually wait for the mongod process to exit during shutdown_mongod</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="daniel.gottlieb@mongodb.com">Daniel Gottlieb</assignee>
                                    <reporter username="max.hirschhorn@mongodb.com">Max Hirschhorn</reporter>
                        <labels>
                            <label>tig-powercycle</label>
                    </labels>
                <created>Thu, 28 Feb 2019 07:05:04 +0000</created>
                <updated>Sun, 29 Oct 2023 22:23:26 +0000</updated>
                            <resolved>Wed, 24 Jun 2020 20:26:43 +0000</resolved>
                                                    <fixVersion>4.4.0-rc11</fixVersion>
                    <fixVersion>4.7.0</fixVersion>
                                    <component>Testing Infrastructure</component>
                                        <votes>1</votes>
                                    <watches>7</watches>
                                                                                                                <comments>
                            <comment id="3223048" author="xgen-internal-githook" created="Wed, 24 Jun 2020 23:14:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Daniel Gottlieb&apos;, &apos;email&apos;: &apos;daniel.gottlieb@mongodb.com&apos;, &apos;username&apos;: &apos;dgottlieb&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-39883&quot; title=&quot;Powercycle doesn&amp;#39;t actually wait for the mongod process to exit during shutdown_mongod&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-39883&quot;&gt;&lt;del&gt;SERVER-39883&lt;/del&gt;&lt;/a&gt;: Have Posix powercycle tests check the MongoDB lock file to signal process termination.&lt;/p&gt;

&lt;p&gt;(cherry picked from commit 128ea14211bc3b0925c5788a848b3c696743f540)&lt;br/&gt;
Branch: v4.4&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/77d222a1b6aab0763ef64c9a7712b1aace60bfe8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/77d222a1b6aab0763ef64c9a7712b1aace60bfe8&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3222751" author="xgen-internal-githook" created="Wed, 24 Jun 2020 20:16:48 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Daniel Gottlieb&apos;, &apos;email&apos;: &apos;daniel.gottlieb@mongodb.com&apos;, &apos;username&apos;: &apos;dgottlieb&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-39883&quot; title=&quot;Powercycle doesn&amp;#39;t actually wait for the mongod process to exit during shutdown_mongod&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-39883&quot;&gt;&lt;del&gt;SERVER-39883&lt;/del&gt;&lt;/a&gt;: Have Posix powercycle tests check the MongoDB lock file to signal process termination.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/128ea14211bc3b0925c5788a848b3c696743f540&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/128ea14211bc3b0925c5788a848b3c696743f540&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3214088" author="daniel.gottlieb@10gen.com" created="Thu, 18 Jun 2020 14:10:49 +0000"  >&lt;p&gt;Thanks for the heads up &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=bruce.lucas&quot; class=&quot;user-hover&quot; rel=&quot;bruce.lucas&quot;&gt;bruce.lucas&lt;/a&gt;. &lt;a href=&quot;https://jira.mongodb.org/browse/WT-6416&quot; title=&quot;RTS to skip reading internal pages that don&amp;#39;t have newer updates&quot; class=&quot;issue-link&quot; data-issue-key=&quot;WT-6416&quot;&gt;&lt;del&gt;WT-6416&lt;/del&gt;&lt;/a&gt; is included (though, barely) in my patch runs.&lt;/p&gt;</comment>
                            <comment id="3213916" author="bruce.lucas@10gen.com" created="Thu, 18 Jun 2020 12:53:47 +0000"  >&lt;p&gt;There was also an issue causing slow shutdown that was fixed by &lt;a href=&quot;https://jira.mongodb.org/browse/WT-6416&quot; title=&quot;RTS to skip reading internal pages that don&amp;#39;t have newer updates&quot; class=&quot;issue-link&quot; data-issue-key=&quot;WT-6416&quot;&gt;&lt;del&gt;WT-6416&lt;/del&gt;&lt;/a&gt; - do the tests that are timing out include that fix?&lt;/p&gt;</comment>
                            <comment id="3213121" author="milkie" created="Wed, 17 Jun 2020 21:43:52 +0000"  >&lt;p&gt;The shutdown slowness might be related to &lt;a href=&quot;https://jira.mongodb.org/browse/WT-6412&quot; title=&quot;Fix extended stalls being seen during MongoDB performance testing&quot; class=&quot;issue-link&quot; data-issue-key=&quot;WT-6412&quot;&gt;&lt;del&gt;WT-6412&lt;/del&gt;&lt;/a&gt;, so once that ticket is fixed the failure frequency might go down more (to zero, hopefully).&lt;/p&gt;</comment>
                            <comment id="3213096" author="daniel.gottlieb@10gen.com" created="Wed, 17 Jun 2020 21:24:35 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ian.whalen&quot; class=&quot;user-hover&quot; rel=&quot;ian.whalen&quot;&gt;ian.whalen&lt;/a&gt; I&apos;ve been able to fix exactly what the ticket is describing (I believe), but we&apos;re still seeing failures for some of the tasks. WT shutdown does much more work than it used to, the test is causing WT to take in excess of 10-20 minutes to shutdown. I don&apos;t know how much I can realistically bump up timeouts (even finding the right timeout to bump is a challenge).&lt;/p&gt;</comment>
                            <comment id="3212036" author="ian@10gen.com" created="Wed, 17 Jun 2020 12:45:54 +0000"  >&lt;p&gt;Marking this as 4.4.0 since it is presumably a release blocker that power cycle is failing 100%.&lt;/p&gt;</comment>
                            <comment id="2170942" author="jonathan.abrahams" created="Tue, 5 Mar 2019 14:31:11 +0000"  >&lt;p&gt;Per discussion, the logic to check for mongod.lock was removed when refactoring for an OS-independent solution. However, if it makes sense to do it for Linux &amp;amp; Windows differently then we should go with your approach.&lt;/p&gt;</comment>
                            <comment id="2167641" author="max.hirschhorn@10gen.com" created="Fri, 1 Mar 2019 17:34:22 +0000"  >&lt;p&gt;As part of the &lt;tt&gt;shutdown&lt;/tt&gt; command (and &lt;tt&gt;exitCleanly()&lt;/tt&gt; in general), the WiredTiger storage engine is shut down before the mongod.lock file is removed. I confirmed with Keith over Slack that when WiredTiger shuts down, it has flushed all of its writes to all open files and closed those files. Those writes should also be visible before returning back to the function call in mongod. This means the &lt;tt&gt;unlink()&lt;/tt&gt; of the mongod.lock file should only be visible &lt;em&gt;after&lt;/em&gt; the all the writes to the data files.&lt;/p&gt;

&lt;p&gt;On a related topic, I was curious to know why you had originally written the condition to check if the lock file is empty or not. Is there a case the lock file would be left behind but as an empty file?&lt;/p&gt;</comment>
                            <comment id="2166710" author="jonathan.abrahams" created="Thu, 28 Feb 2019 21:02:35 +0000"  >&lt;p&gt;It seemed a better way to detect that actual process has been &quot;stopped&quot; and would be OS-independent. Your proposal seems reasonable; I&apos;d still be concerned about the DB files flushing being complete within 5 seconds.&lt;/p&gt;</comment>
                            <comment id="2165770" author="max.hirschhorn@10gen.com" created="Thu, 28 Feb 2019 07:05:20 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jonathan.abrahams&quot; class=&quot;user-hover&quot; rel=&quot;jonathan.abrahams&quot;&gt;jonathan.abrahams&lt;/a&gt;, what was the reason you removed the &lt;tt&gt;os.path.exists(lock_file) and os.stat(lock_file).st_size&lt;/tt&gt; version of the check in the changes from &lt;a href=&quot;https://github.com/mongodb/mongo/commit/08b25546588cc64b50a1c5c70e94b6d7e8811e5a&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;08b2554&lt;/a&gt; as part of &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-35506&quot; title=&quot;The Powercycle wait_for_mongod_shutdown function should ensure the mongod process is no longer running&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-35506&quot;&gt;&lt;del&gt;SERVER-35506&lt;/del&gt;&lt;/a&gt;? I agree the &lt;tt&gt;win32serviceutil.QueryServiceStatus()&lt;/tt&gt; version is necessary for reliably detecting when mongod has exited on Windows, but the &lt;tt&gt;ProcessControl.get_pids()&lt;/tt&gt; version seems less reliable on Linux. My inclination would be to poll &lt;tt&gt;win32serviceutil.QueryServiceStatus()&lt;/tt&gt; on Windows and poll &lt;tt&gt;os.path.exists(lock_file) and os.stat(lock_file).st_size&lt;/tt&gt; on Linux.&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>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1379050">WT-6412</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="556142">SERVER-35506</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>11.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="18953"><![CDATA[v4.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>Thu, 28 Feb 2019 21:02:35 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        3 years, 33 weeks ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_17050" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Downstream Team Attention</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="16941"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            3 years, 33 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>50.0</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>bruce.lucas@mongodb.com</customfieldvalue>
            <customfieldvalue>daniel.gottlieb@mongodb.com</customfieldvalue>
            <customfieldvalue>milkie@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>ian@mongodb.com</customfieldvalue>
            <customfieldvalue>jonathan.abrahams</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|hup14f:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|huerev:</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="3959">STM 2020-06-29</customfieldvalue>

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

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