<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:46:12 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-37507] Reducing disk space needed to build mongodb</title>
                <link>https://jira.mongodb.org/browse/SERVER-37507</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Building mongodb 3.6.8 takes about 15GB of disk space on macOS. This has been a problem for the MacPorts project&apos;s build farm, which I administer, because our build machines don&apos;t always have that much disk space available.&lt;/p&gt;

&lt;p&gt;It&apos;s hard to imagine what all that disk space is being used for, since the total size of everything that actually ends up getting installed is under 200MB. I have not yet had an opportunity to try building mongodb 4, but assuming the build system hasn&apos;t changed that much, is there a way to reduce how much disk space it uses to build? Or are there any flags to tell the build system to clean up intermediate files as it goes along?&lt;/p&gt;</description>
                <environment></environment>
        <key id="615074">SERVER-37507</key>
            <summary>Reducing disk space needed to build mongodb</summary>
                <type id="6" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14720&amp;avatarType=issuetype">Question</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</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="13202">Works as Designed</resolution>
                                        <assignee username="andrew.morrow@mongodb.com">Andrew Morrow</assignee>
                                    <reporter username="ryandesign">Ryan Schmidt</reporter>
                        <labels>
                    </labels>
                <created>Sun, 7 Oct 2018 06:25:33 +0000</created>
                <updated>Fri, 27 Oct 2023 13:53:28 +0000</updated>
                            <resolved>Mon, 15 Oct 2018 17:51:33 +0000</resolved>
                                    <version>3.6.8</version>
                                                    <component>Build</component>
                                        <votes>0</votes>
                                    <watches>11</watches>
                                                                                                                <comments>
                            <comment id="2033213" author="ryandesign" created="Mon, 15 Oct 2018 18:59:53 +0000"  >&lt;p&gt;Thanks for your help. I&apos;ve updated mongodb in MacPorts to 4.0.3 leaving the &lt;tt&gt;-ggdb&lt;/tt&gt; flag untouched.&lt;/p&gt;</comment>
                            <comment id="2033104" author="acm" created="Mon, 15 Oct 2018 17:51:33 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ryandesign&quot; class=&quot;user-hover&quot; rel=&quot;ryandesign&quot;&gt;ryandesign&lt;/a&gt; - I&apos;m going to close this as &quot;Works as Designed&quot;. If you need further help with this please feel free to re-open or comment on the ticket and I will see it.&lt;/p&gt;</comment>
                            <comment id="2029214" author="acm" created="Wed, 10 Oct 2018 16:51:34 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ryandesign&quot; class=&quot;user-hover&quot; rel=&quot;ryandesign&quot;&gt;ryandesign&lt;/a&gt; - Unless you are running &lt;tt&gt;dsymutil&lt;/tt&gt; on the resulting &lt;tt&gt;mongod&lt;/tt&gt;, &lt;tt&gt;mongos&lt;/tt&gt; binaries and retaining the produced &lt;tt&gt;.dSYM&lt;/tt&gt; directories somewhere, the binaries that you are currently installing are effectively already stripped of debug info once you throw away the object files. I can&apos;t entirely explain what the 40MB savings in the final binaries is about when you entirely disable debug information, but maybe it is whatever minimal debug information is needed to allow reaching out to any &lt;tt&gt;.dSYM&lt;/tt&gt; files? I have a hard time believing that that would be 40 MB, but who knows. It is worth exploring. In any event, if you aren&apos;t making those &lt;tt&gt;.dSYM&lt;/tt&gt; files, you aren&apos;t doing any worse by disabling debug info entirely, I think. That said, my recommendation would be not to change it, if you can live with 5.6GB for the build.&lt;/p&gt;</comment>
                            <comment id="2028662" author="ryandesign" created="Wed, 10 Oct 2018 05:38:54 +0000"  >&lt;p&gt;You mean &lt;tt&gt;-ggdb&lt;/tt&gt;? I tried removing that and it does reduce the disk space needed down to 900MB. The installed files make up 156MB of that, so they&apos;ve decreased in size too; presumably they no longer contain debug information. Not sure how important the debug information would be to a user, or to you&#8212;would this negatively affect the readability of crash reports that a user might send you, for example?&lt;/p&gt;

&lt;p&gt;I also tried replacing &lt;tt&gt;-ggdb&lt;/tt&gt;&#160;with &lt;tt&gt;-g&lt;/tt&gt;, which didn&apos;t change disk usage much (5.6GB).&lt;/p&gt;</comment>
                            <comment id="2027634" author="acm" created="Tue, 9 Oct 2018 13:04:02 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ryandesign&quot; class=&quot;user-hover&quot; rel=&quot;ryandesign&quot;&gt;ryandesign&lt;/a&gt; - Great news, I&apos;m glad that helped. FWIW, I think the reason you still see 5.9 GB of disk space despite the final binary only being 191MB is that OS X &lt;tt&gt;ld&lt;/tt&gt; leaves debug info in the object files and doesn&apos;t copy it into the binaries. It still feels pretty high to me though, so if you wanted to test that theory, you could edit the &lt;tt&gt;-g&lt;/tt&gt; out of &lt;tt&gt;CCFLAGS&lt;/tt&gt; in the top level &lt;tt&gt;SConstruct&lt;/tt&gt; file and see what your disk utilization looks like. I&apos;m not sure what MacPorts approach to handling separate debug info looks like, but again, if you aren&apos;t running &lt;tt&gt;dsymutil&lt;/tt&gt; and attaching debug packages, you probably don&apos;t need the debug info in the object files in the first place. We don&apos;t currently offer a build flag to do that since we more or less always want the debug info, but it wouldn&apos;t be too hard to add.&lt;/p&gt;</comment>
                            <comment id="2027335" author="ryandesign" created="Tue, 9 Oct 2018 02:34:34 +0000"  >&lt;p&gt;Thanks for the suggestion! You&apos;re right, we haven&apos;t configured our mongodb port to run any tests. Changing the build targets from &lt;tt&gt;all mongobridge&lt;/tt&gt; to &lt;tt&gt;core mongobridge&lt;/tt&gt; seems to produce the same files to install, but only uses 5.9GB of disk space to build. That will help us a lot. 5.9GB is still a &lt;em&gt;lot&lt;/em&gt;&#160;of space to install just 191MB, but it&apos;s much better than 15GB.&lt;/p&gt;</comment>
                            <comment id="2027309" author="acm" created="Tue, 9 Oct 2018 00:47:23 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ryandesign&quot; class=&quot;user-hover&quot; rel=&quot;ryandesign&quot;&gt;ryandesign&lt;/a&gt; - I see that you are building the &lt;tt&gt;all&lt;/tt&gt; target, which includes all of the unit tests, all of which are statically linked. It also doesn&apos;t appear to me that you are actually running those tests. I think we can probably greatly reduce the overhead by being more selective about the targets to build. &lt;/p&gt;</comment>
                            <comment id="2027292" author="ryandesign" created="Mon, 8 Oct 2018 23:46:01 +0000"  >&lt;p&gt;Our mongodb Portfile is &lt;a href=&quot;https://github.com/macports/macports-ports/blob/master/databases/mongodb/Portfile&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;here&lt;/a&gt;.&#160;What it ends up running is:&lt;/p&gt;

&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;scons -j8 all mongobridge CC=&quot;/usr/bin/clang&quot; CCFLAGS=&quot;-arch x86_64&quot; CPPPATH=&quot;/opt/local/include&quot; CXX=&quot;/usr/bin/clang++&quot; LIBPATH=&quot;/opt/local/lib&quot; LINKFLAGS=&quot;-arch x86_64&quot; TARGET_ARCH=x86_64 --disable-warnings-as-errors --libc++ --ssl --wiredtiger=on VARIANT_DIR=MP&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</comment>
                            <comment id="2026410" author="acm" created="Mon, 8 Oct 2018 13:11:14 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ryandesign&quot; class=&quot;user-hover&quot; rel=&quot;ryandesign&quot;&gt;ryandesign&lt;/a&gt; - Can you point me to the MacPorts script that invokes SCons? I&apos;d like to know what targets you are building to make sure that you aren&apos;t building more than you need. I don&apos;t believe there are any options to do incremental cleanups.&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>9.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_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 8 Oct 2018 13:11:14 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        5 years, 17 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_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>
                            5 years, 17 weeks, 2 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>andrew.morrow@mongodb.com</customfieldvalue>
            <customfieldvalue>ryandesign</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hu9oxj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hu01h3:</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="2584">Dev Tools 2018-10-22</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|hu9b6v:</customfieldvalue>

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