<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:45:48 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-37375] ServiceContextMongoDTest fixture shouldn&apos;t write out storage engine related files to disk</title>
                <link>https://jira.mongodb.org/browse/SERVER-37375</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Whenever a ServiceContextMongoDTest fixture is constructed, it &lt;a href=&quot;https://github.com/mongodb/mongo/blob/840cf50e5b071103fca33ff24e39333064c07f18/src/mongo/db/service_context_d_test_fixture.cpp#L78&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;initializes a new storage engine&lt;/a&gt;. This storage engine initialization process does at least two disk writes: it &lt;a href=&quot;https://github.com/mongodb/mongo/blob/fa5f357a688e0eb5c4d260cf86997495854104b1/src/mongo/db/storage/storage_engine_init.cpp#L189-L191&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;creates a PID file&lt;/a&gt; for the running process and also &lt;a href=&quot;https://github.com/mongodb/mongo/blob/fa5f357a688e0eb5c4d260cf86997495854104b1/src/mongo/db/storage/storage_engine_init.cpp#L194-L200&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;writes out the storage engine metadata file&lt;/a&gt; (&lt;tt&gt;storage.bson&lt;/tt&gt;). For unit test suites with lots of tests, these file writes occur &lt;em&gt;every&lt;/em&gt; time a test is run. This can add an undesirable amount of overhead to unit test execution, and these disk writes don&apos;t seem necessary since the unit tests mostly use an ephemeral storage engine. We should try to avoid doing these writes in our unit test fixtures.&lt;/p&gt;</description>
                <environment></environment>
        <key id="611363">SERVER-37375</key>
            <summary>ServiceContextMongoDTest fixture shouldn&apos;t write out storage engine related files to disk</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="siyuan.zhou@mongodb.com">Siyuan Zhou</assignee>
                                    <reporter username="william.schultz@mongodb.com">William Schultz</reporter>
                        <labels>
                            <label>tig-unittests</label>
                    </labels>
                <created>Fri, 28 Sep 2018 15:48:07 +0000</created>
                <updated>Sun, 29 Oct 2023 22:27:49 +0000</updated>
                            <resolved>Tue, 7 Jan 2020 22:07:49 +0000</resolved>
                                                    <fixVersion>4.3.3</fixVersion>
                                    <component>Replication</component>
                    <component>Storage</component>
                                        <votes>0</votes>
                                    <watches>7</watches>
                                                                                                                <comments>
                            <comment id="2710845" author="xgen-internal-githook" created="Tue, 7 Jan 2020 22:05:49 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Siyuan Zhou&apos;, &apos;email&apos;: &apos;siyuan.zhou@mongodb.com&apos;, &apos;username&apos;: &apos;visualzhou&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-37375&quot; title=&quot;ServiceContextMongoDTest fixture shouldn&amp;#39;t write out storage engine related files to disk&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-37375&quot;&gt;&lt;del&gt;SERVER-37375&lt;/del&gt;&lt;/a&gt; ServiceContextMongoDTest fixture shouldn&apos;t write out storage engine related files to disk&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/6af04637ba2905cdc9ce16abbc0875074403467c&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/6af04637ba2905cdc9ce16abbc0875074403467c&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2658831" author="siyuan.zhou@10gen.com" created="Fri, 20 Dec 2019 21:49:30 +0000"  >&lt;p&gt;This seems a small patch but has a meaningful impact. I wrote up the patch and reduced the running time of&#160;db_repl_coordinator_test including&#160;358 test cases from around 11 seconds to 4 seconds. Assigning to myself.&lt;/p&gt;</comment>
                            <comment id="2653500" author="sara.williamson" created="Thu, 19 Dec 2019 20:58:35 +0000"  >&lt;p&gt;We&apos;re closing this as won&apos;t fix right now, as we don&apos;t want to make a change in behavior that only applies to unit tests (as that might introduce risk/reduce our test coverage). In the future we might want to revisit this as part of a larger effort to analyze unit test performance to see if there are other solutions.&lt;/p&gt;</comment>
                            <comment id="2033344" author="william.schultz" created="Mon, 15 Oct 2018 20:37:35 +0000"  >&lt;p&gt;That&apos;s fair, but in general I still think this is a worthwhile ticket. Unit tests, fundamentally, should be very fast to run. The fact that they require an external library to achieve that seems undesirable. &lt;/p&gt;</comment>
                            <comment id="2019528" author="craig.homa" created="Mon, 1 Oct 2018 18:26:08 +0000"  >&lt;p&gt;Hey &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=milkie&quot; class=&quot;user-hover&quot; rel=&quot;milkie&quot;&gt;milkie&lt;/a&gt;, the repl team would like to know if this would be something quick/easy for your team to fix?&lt;/p&gt;</comment>
                            <comment id="2017814" author="schwerin" created="Fri, 28 Sep 2018 17:21:08 +0000"  >&lt;p&gt;To clarify, the storage engine isn&apos;t always the emphemeralForTest storage engine, but it always uses a new temp directory, so unless we&apos;re unit testing recovery steps that involve those files, not writing them seems quite safe.&lt;/p&gt;</comment>
                            <comment id="2017680" author="william.schultz" created="Fri, 28 Sep 2018 15:58:25 +0000"  >&lt;p&gt;Furthermore, after a cursory local run, all existing unit tests appear to succeed even when these disk writes are removed.&lt;/p&gt;</comment>
                            <comment id="2017668" author="william.schultz" created="Fri, 28 Sep 2018 15:52:16 +0000"  >&lt;p&gt;By some rough estimates from local testing, these disk writes can add up to ~20-30 milliseconds of execution time to each test. For a unit test suite with ~100 tests, this is 2-3 seconds of extra execution time, just for set up logic.&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>8.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.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, 28 Sep 2018 17:21:08 +0000</customfieldvalue>

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


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

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_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, 5 weeks, 1 day 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>schwerin@mongodb.com</customfieldvalue>
            <customfieldvalue>craig.homa@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>sara.williamson@mongodb.com</customfieldvalue>
            <customfieldvalue>siyuan.zhou@mongodb.com</customfieldvalue>
            <customfieldvalue>william.schultz@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hu93un:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|htzi7r:</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="3438">Repl 2019-12-30</customfieldvalue>
    <customfieldvalue id="3439">Repl 2020-01-13</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|hu8q3z:</customfieldvalue>

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