<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:02:10 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-43063] Make the ServerParameterSet map non-leaky</title>
                <link>https://jira.mongodb.org/browse/SERVER-43063</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Right now we leak the map of server parameters contained inside the &lt;a href=&quot;https://github.com/mongodb/mongo/blob/18f95f8ad46c685d8529dba2d5655b3e4ef968c1/src/mongo/idl/server_parameter.h#L156&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;ServerParametersSet class&lt;/a&gt; leaks memory on shutdown. As far as I can tell, it is a global and currently implicitly leaked somehow without ASAN complaining.&lt;/p&gt;

&lt;p&gt;-----------------------------&lt;br/&gt;
Why this was a problem:&lt;/p&gt;

&lt;p&gt;We want to run WiredTiger in unit tests with higher level code. The setup of the WiredTigerKVEngine (the wt storage engine) requires manually setting up a couple server parameters &lt;a href=&quot;https://github.com/mongodb/mongo/blob/c72617a4777e31bbd887632e9529b8e00ce0857a/src/mongo/db/storage/wiredtiger/wiredtiger_init.cpp#L121-L127&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;here&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;However, ASAN catches the memory leak in unit tests: it appears to be more strict in unit test binaries than the mongod binary.&lt;/p&gt;

&lt;p&gt;--------------------------&lt;br/&gt;
Temporary solution added in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-43058&quot; title=&quot;Allow the CatalogTestFixture to use the wiredtiger storage engine&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-43058&quot;&gt;&lt;del&gt;SERVER-43058&lt;/del&gt;&lt;/a&gt;: we used __lsan_ignore_object on the server parameters set up in &lt;tt&gt;wiredtiger_init.cpp&lt;/tt&gt; to quiet ASAN for the unit tests.&lt;/p&gt;</description>
                <environment></environment>
        <key id="910123">SERVER-43063</key>
            <summary>Make the ServerParameterSet map non-leaky</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="13203">Gone away</resolution>
                                        <assignee username="backlog-server-devtools">DO NOT USE - Backlog - Dev Tools</assignee>
                                    <reporter username="dianna.hohensee@mongodb.com">Dianna Hohensee</reporter>
                        <labels>
                    </labels>
                <created>Wed, 28 Aug 2019 16:03:48 +0000</created>
                <updated>Fri, 27 Oct 2023 20:42:42 +0000</updated>
                            <resolved>Thu, 26 Dec 2019 21:55:20 +0000</resolved>
                                                                                        <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="2664215" author="milkie" created="Thu, 26 Dec 2019 21:55:20 +0000"  >&lt;p&gt;I fixed the leak of the ServerParameters with &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-45288&quot; title=&quot;switch Idempotency tests to use WiredTiger instead of ephemeralForTest&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-45288&quot;&gt;&lt;del&gt;SERVER-45288&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2413866" author="dianna.hohensee" created="Tue, 10 Sep 2019 03:39:47 +0000"  >&lt;p&gt;I&apos;ve updated the description per what we ended up doing in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-43058&quot; title=&quot;Allow the CatalogTestFixture to use the wiredtiger storage engine&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-43058&quot;&gt;&lt;del&gt;SERVER-43058&lt;/del&gt;&lt;/a&gt;. We discovered that regardless of how we handled adding/removing to the global server params map and bypassing invariant checks, we fundamentally had a memory leak that unit tests did not appear to accept. Therefore we pivot&apos;ed to quieting the ASAN error for the time building, to unblock work that was piling up behind getting the new unit tests working.&lt;/p&gt;</comment>
                            <comment id="2398011" author="billy.donahue" created="Wed, 28 Aug 2019 16:37:36 +0000"  >&lt;p&gt;The name &lt;tt&gt;forTesting&lt;/tt&gt; could mean a lot of different behaviors. Let&apos;s put a hint in the name indicating what its implication is. Specifically that it is okay to re-add this ServerParameter to a ServerParameterSet.&lt;/p&gt;

&lt;p&gt;I think maybe you don&apos;t need a &lt;tt&gt;ServerParameterSet::setTesting&lt;/tt&gt; function. We can unconditionally disable the dupe check for any incoming &lt;tt&gt;ServerParameter&lt;/tt&gt; that has been marked &lt;tt&gt;forTesting&lt;/tt&gt; (or whatever that mark gets renamed to).&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="908975">SERVER-43058</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1066843">SERVER-45307</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25145"><![CDATA[Developer Tools]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 28 Aug 2019 16:37:36 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 6 weeks, 6 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-1492</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>false</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, 6 weeks, 6 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>billy.donahue@mongodb.com</customfieldvalue>
            <customfieldvalue>dianna.hohensee@mongodb.com</customfieldvalue>
            <customfieldvalue>backlog-server-devtools</customfieldvalue>
            <customfieldvalue>milkie@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hvneev:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hvc62f:</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_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|hvn0o7:</customfieldvalue>

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