<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 02:57:15 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-1517] Turn on heapchecking in jstests on Linux 32 build</title>
                <link>https://jira.mongodb.org/browse/SERVER-1517</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Perhaps we could introduce google heap checker in our builds. Here&apos;s&lt;br/&gt;
how I hacked it here:&lt;/p&gt;

&lt;p&gt;1) Compile code with -fno-frame-omit-pointer&lt;br/&gt;
Basically, this means we give up one register during execution.&lt;br/&gt;
But the location of stack frame pointers is always kept in that&lt;br/&gt;
register, so backtracing the stack accurately is possible without code&lt;br/&gt;
knowledge.&lt;br/&gt;
We may or may not care; need measure perf. Worst case, do it in --d builds only.&lt;/p&gt;

&lt;p&gt;2) We link mongo, mongos, and mongod with tcmalloc&lt;br/&gt;
It must be the last library to be linked to.&lt;/p&gt;

&lt;p&gt;3) In shell_utils.cpp&lt;br/&gt;
We need to differentiate the cases when we want to activate heap-checking.&lt;br/&gt;
Use execvpe() instead of execvp() and pass &quot;HEAPCHECK=normal&quot; in the&lt;br/&gt;
env, is all.&lt;/p&gt;

&lt;p&gt;4) Say we&apos;re monitoring leaks on mongos, e.g. we&apos;re running jstests/sharding/*&lt;br/&gt;
s.stop would check the exit code of that process&lt;br/&gt;
heapcheck exits with error if it thinks it found a leak&lt;/p&gt;

&lt;p&gt;5) Instrument mongo::mutex::~mutex() as a false positive, so that&lt;br/&gt;
mongos exist cleans even with that. We can hide the instrumenting code&lt;br/&gt;
behind ENTRY_HEAP_EXCEPTION / EXIT_HEAP_EXCEPTION macros&lt;/p&gt;</description>
                <environment></environment>
        <key id="12597">SERVER-1517</key>
            <summary>Turn on heapchecking in jstests on Linux 32 build</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="2">Won&apos;t Fix</resolution>
                                        <assignee username="backlog-server-tig">DO NOT USE - Backlog - Test Infrastructure Group (TIG)</assignee>
                                    <reporter username="alerner">Alberto Lerner</reporter>
                        <labels>
                    </labels>
                <created>Fri, 30 Jul 2010 14:11:53 +0000</created>
                <updated>Fri, 11 Dec 2015 15:35:19 +0000</updated>
                            <resolved>Fri, 11 Dec 2015 15:35:19 +0000</resolved>
                                                                    <component>Testing Infrastructure</component>
                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="1112068" author="acm" created="Fri, 11 Dec 2015 15:33:05 +0000"  >&lt;p&gt;Nope, feel free to close&lt;/p&gt;</comment>
                            <comment id="1111744" author="kamran.khan" created="Fri, 11 Dec 2015 05:54:34 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=acm&quot; class=&quot;user-hover&quot; rel=&quot;acm&quot;&gt;acm&lt;/a&gt;, is there value in trying to use HEAPCHECK with tcmalloc builds or should we close this now that we&apos;re using LSan with non-tcmalloc builds?&lt;/p&gt;</comment>
                            <comment id="17678" author="alerner" created="Wed, 1 Sep 2010 21:41:57 +0000"  >&lt;p&gt;The heap-checker, even in 1.6 (august release), is still presenting some problems in 64 bits. The problems have been reported in the perf-tools list, so I&apos;m hoping eventually we&apos;ll get a fix. For now, 32 bits is pretty consistent and can be installed from packages.&lt;/p&gt;</comment>
                            <comment id="17677" author="eliot" created="Wed, 1 Sep 2010 21:29:58 +0000"  >&lt;p&gt;Did you want to go 32 or 64 bit for this slave?&lt;br/&gt;
Or did you need to test perf tools on 64-bit before deciding?&lt;/p&gt;</comment>
                            <comment id="16850" author="alerner" created="Fri, 13 Aug 2010 14:34:14 +0000"  >&lt;p&gt;No leaks detected in mongos in the sharding smoke tests. This is ready for the new build slave machine. &lt;/p&gt;</comment>
                            <comment id="16785" author="auto" created="Thu, 12 Aug 2010 14:06:42 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1517&quot; title=&quot;Turn on heapchecking in jstests on Linux 32 build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1517&quot;&gt;&lt;del&gt;SERVER-1517&lt;/del&gt;&lt;/a&gt; Start with mongos checking.&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/812d855db21e353516fbd45fb46eb9c920577ae6&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/812d855db21e353516fbd45fb46eb9c920577ae6&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16681" author="auto" created="Tue, 10 Aug 2010 19:37:49 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1517&quot; title=&quot;Turn on heapchecking in jstests on Linux 32 build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1517&quot;&gt;&lt;del&gt;SERVER-1517&lt;/del&gt;&lt;/a&gt; Heapcheck &apos;mongod&apos; and &apos;mongos&apos; only (fix core tests)&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/04d9cfb67ca224cb7c9fcaced746a4ad559c9518&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/04d9cfb67ca224cb7c9fcaced746a4ad559c9518&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16678" author="alerner" created="Tue, 10 Aug 2010 18:08:06 +0000"  >&lt;p&gt;Fix for last commit:&lt;/p&gt;

&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: Fix build (broken at f800c20958ba03e25e85)&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/64210308ba3a00377d211ae2e3499f65b0962591&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/64210308ba3a00377d211ae2e3499f65b0962591&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16674" author="auto" created="Tue, 10 Aug 2010 17:19:13 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1517&quot; title=&quot;Turn on heapchecking in jstests on Linux 32 build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1517&quot;&gt;&lt;del&gt;SERVER-1517&lt;/del&gt;&lt;/a&gt; allow heap-checking in jstests&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/f800c20958ba03e25e85732783a754595a433e5f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/f800c20958ba03e25e85732783a754595a433e5f&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16667" author="auto" created="Tue, 10 Aug 2010 15:09:06 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1517&quot; title=&quot;Turn on heapchecking in jstests on Linux 32 build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1517&quot;&gt;&lt;del&gt;SERVER-1517&lt;/del&gt;&lt;/a&gt; Add --heapcheck options to build&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/011e22c0646d118aa3908a96ba5ef6170d273e4e&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/011e22c0646d118aa3908a96ba5ef6170d273e4e&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16666" author="auto" created="Tue, 10 Aug 2010 13:48:57 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: Revert &quot;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1517&quot; title=&quot;Turn on heapchecking in jstests on Linux 32 build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1517&quot;&gt;&lt;del&gt;SERVER-1517&lt;/del&gt;&lt;/a&gt; Add --heapcheck option to build (tentative)&quot;&lt;/p&gt;

&lt;p&gt;This reverts commit d607f3dcdcf97b1dc7fca59f94b36d8f21e1ee53.&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/c629c8e2c2e414961c141d1b3ca22a627dd9cc65&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/c629c8e2c2e414961c141d1b3ca22a627dd9cc65&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16665" author="auto" created="Tue, 10 Aug 2010 13:41:17 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1517&quot; title=&quot;Turn on heapchecking in jstests on Linux 32 build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1517&quot;&gt;&lt;del&gt;SERVER-1517&lt;/del&gt;&lt;/a&gt; Add --heapcheck option to build (tentative)&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/d607f3dcdcf97b1dc7fca59f94b36d8f21e1ee53&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/d607f3dcdcf97b1dc7fca59f94b36d8f21e1ee53&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16612" author="auto" created="Mon, 9 Aug 2010 13:32:19 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;alerner&apos;, &apos;name&apos;: &apos;Alberto Lerner&apos;, &apos;email&apos;: &apos;alerner@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1517&quot; title=&quot;Turn on heapchecking in jstests on Linux 32 build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1517&quot;&gt;&lt;del&gt;SERVER-1517&lt;/del&gt;&lt;/a&gt; Prep work for option to heap-checking during tests&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/a902556f80e34da3c641aebf9eeb58dc94643395&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/a902556f80e34da3c641aebf9eeb58dc94643395&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="16372" author="alerner" created="Mon, 2 Aug 2010 17:29:22 +0000"  >&lt;p&gt;About 4), this is a no-op. Exit codes are already checked and., If heap-checking is activated and there&apos;s a leak, mongos exits through the heap-checker with an error exit code&lt;/p&gt;

&lt;p&gt;About 5), can be done by IgnoreObject after mutex alloc and UnIgnoreObject before mutex destruction, both within class mutex&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="28330">SERVER-4683</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>14.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>Mon, 9 Aug 2010 13:32:19 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        8 years, 9 weeks, 5 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_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>kamran.khan</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            8 years, 9 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10000" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Old_Backport</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10000"><![CDATA[No]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>alerner</customfieldvalue>
            <customfieldvalue>andrew.morrow@mongodb.com</customfieldvalue>
            <customfieldvalue>auto</customfieldvalue>
            <customfieldvalue>backlog-server-tig</customfieldvalue>
            <customfieldvalue>eliot</customfieldvalue>
            <customfieldvalue>kamran.khan</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrpiiv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrft7r:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4950</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_11861" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>User Summary</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11856"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrkwcn:</customfieldvalue>

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