<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:54:37 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-40317] $facet execution has no limit on how much memory it can consume</title>
                <link>https://jira.mongodb.org/browse/SERVER-40317</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;A $facet always outputs one document but it completely executes all of its pipelines no matter how large they are. To avoid unreasonable memory consumption, the $facet should return an error as soon as it has &amp;gt;100MB of results, rather than waiting until it&apos;s computed all of its data.&lt;/p&gt;

&lt;p&gt;Note that the $facet&apos;s output document is allowed to be up to 100MB large if it is an intermediate result. However, all documents produced by an aggregation pipeline&apos;s result set must be 16MB or less due to the BSON size limit. So the 100MB limit applies to the output document produced by $facet, but the pipeline will still fail unless the size of this document is subsequently reduced to 16MB or less.&lt;/p&gt;

&lt;p&gt;Also, note that the value of &lt;tt&gt;allowDiskUse&lt;/tt&gt; does not affect the behavior implemented under this ticket, since the $facet stage&apos;s current implementation cannot spill to disk. &lt;/p&gt;</description>
                <environment></environment>
        <key id="721441">SERVER-40317</key>
            <summary>$facet execution has no limit on how much memory it can consume</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="david.storch@mongodb.com">David Storch</assignee>
                                    <reporter username="justin.seyster@mongodb.com">Justin Seyster</reporter>
                        <labels>
                    </labels>
                <created>Fri, 22 Mar 2019 22:29:57 +0000</created>
                <updated>Sun, 29 Oct 2023 22:22:40 +0000</updated>
                            <resolved>Fri, 14 Aug 2020 16:32:57 +0000</resolved>
                                                    <fixVersion>3.6.20</fixVersion>
                    <fixVersion>4.7.0</fixVersion>
                    <fixVersion>4.2.10</fixVersion>
                    <fixVersion>4.4.2</fixVersion>
                    <fixVersion>4.0.21</fixVersion>
                                    <component>Aggregation Framework</component>
                                        <votes>2</votes>
                                    <watches>15</watches>
                                                                                                                <comments>
                            <comment id="3387218" author="xgen-internal-githook" created="Fri, 11 Sep 2020 14:09:25 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;David Storch&apos;, &apos;email&apos;: &apos;david.storch@mongodb.com&apos;, &apos;username&apos;: &apos;dstorch&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-40317&quot; title=&quot;$facet execution has no limit on how much memory it can consume&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-40317&quot;&gt;&lt;del&gt;SERVER-40317&lt;/del&gt;&lt;/a&gt; Fail query when $facet intermediate output exceeds 100MB&lt;/p&gt;

&lt;p&gt;Co-authored-by: Justin Seyster &amp;lt;justin.seyster@mongodb.com&amp;gt;&lt;br/&gt;
Co-authored-by: Jacob Evans &amp;lt;jacob.evans@10gen.com&amp;gt;&lt;br/&gt;
(cherry picked from commit e0bbfe119331514119c6f573eac9998ccf2a3dbe)&lt;br/&gt;
Branch: v4.4&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/05cb6dc742fe17b55cf2851f67d8c88e00868efb&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/05cb6dc742fe17b55cf2851f67d8c88e00868efb&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3358368" author="xgen-internal-githook" created="Tue, 25 Aug 2020 16:27:38 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;David Storch&apos;, &apos;email&apos;: &apos;david.storch@mongodb.com&apos;, &apos;username&apos;: &apos;dstorch&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-40317&quot; title=&quot;$facet execution has no limit on how much memory it can consume&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-40317&quot;&gt;&lt;del&gt;SERVER-40317&lt;/del&gt;&lt;/a&gt; Fail query when $facet intermediate output exceeds 100MB&lt;/p&gt;

&lt;p&gt;Co-authored-by: Justin Seyster &amp;lt;justin.seyster@mongodb.com&amp;gt;&lt;br/&gt;
Co-authored-by: Jacob Evans &amp;lt;jacob.evans@10gen.com&amp;gt;&lt;br/&gt;
(cherry picked from commit 1e62dde76309c37f8aae937f8782431177b90477)&lt;br/&gt;
Branch: v3.6&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/bfecd6ba7c6bd490c19a7bc6bd0e97b577711a6b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/bfecd6ba7c6bd490c19a7bc6bd0e97b577711a6b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3357789" author="xgen-internal-githook" created="Tue, 25 Aug 2020 14:24:27 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;David Storch&apos;, &apos;email&apos;: &apos;david.storch@mongodb.com&apos;, &apos;username&apos;: &apos;dstorch&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-40317&quot; title=&quot;$facet execution has no limit on how much memory it can consume&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-40317&quot;&gt;&lt;del&gt;SERVER-40317&lt;/del&gt;&lt;/a&gt; Fail query when $facet intermediate output exceeds 100MB&lt;/p&gt;

&lt;p&gt;Co-authored-by: Justin Seyster &amp;lt;justin.seyster@mongodb.com&amp;gt;&lt;br/&gt;
Co-authored-by: Jacob Evans &amp;lt;jacob.evans@10gen.com&amp;gt;&lt;br/&gt;
(cherry picked from commit 6b6e686be20ed63446111445982513ebfb94a8cb)&lt;br/&gt;
Branch: v4.0&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/1e62dde76309c37f8aae937f8782431177b90477&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/1e62dde76309c37f8aae937f8782431177b90477&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3356171" author="xgen-internal-githook" created="Mon, 24 Aug 2020 19:37:10 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;David Storch&apos;, &apos;email&apos;: &apos;david.storch@mongodb.com&apos;, &apos;username&apos;: &apos;dstorch&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-40317&quot; title=&quot;$facet execution has no limit on how much memory it can consume&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-40317&quot;&gt;&lt;del&gt;SERVER-40317&lt;/del&gt;&lt;/a&gt; Fail query when $facet intermediate output exceeds 100MB&lt;/p&gt;

&lt;p&gt;Co-authored-by: Justin Seyster &amp;lt;justin.seyster@mongodb.com&amp;gt;&lt;br/&gt;
Co-authored-by: Jacob Evans &amp;lt;jacob.evans@10gen.com&amp;gt;&lt;br/&gt;
(cherry picked from commit e0bbfe119331514119c6f573eac9998ccf2a3dbe)&lt;br/&gt;
Branch: v4.2&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/6b6e686be20ed63446111445982513ebfb94a8cb&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/6b6e686be20ed63446111445982513ebfb94a8cb&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3339678" author="xgen-internal-githook" created="Fri, 14 Aug 2020 16:29:38 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;David Storch&apos;, &apos;email&apos;: &apos;david.storch@mongodb.com&apos;, &apos;username&apos;: &apos;dstorch&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-40317&quot; title=&quot;$facet execution has no limit on how much memory it can consume&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-40317&quot;&gt;&lt;del&gt;SERVER-40317&lt;/del&gt;&lt;/a&gt; Fail query when $facet intermediate output exceeds 100MB&lt;/p&gt;

&lt;p&gt;Co-authored-by: Justin Seyster &amp;lt;justin.seyster@mongodb.com&amp;gt;&lt;br/&gt;
Co-authored-by: Jacob Evans &amp;lt;jacob.evans@10gen.com&amp;gt;&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/e0bbfe119331514119c6f573eac9998ccf2a3dbe&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/e0bbfe119331514119c6f573eac9998ccf2a3dbe&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2274281" author="jacob.evans" created="Thu, 6 Jun 2019 17:47:53 +0000"  >&lt;p&gt;We decided that this was lower value than rethinking our $facet passthrough which this would necessitate. The passthrough would hit the proposed limit many times and require engineering effort to manually disable with blacklisting.&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="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="1409295">SERVER-49506</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="1409295">SERVER-49506</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1869757">SERVER-59837</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>6.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>
    <customfieldvalue key="16775"><![CDATA[v4.2]]></customfieldvalue>
    <customfieldvalue key="15640"><![CDATA[v4.0]]></customfieldvalue>
    <customfieldvalue key="15141"><![CDATA[v3.6]]></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_13552" key="com.go2group.jira.plugin.crm:crm_generic_field">
                        <customfieldname>Case</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[[5002K00000oc6g1QAA, 5002K00000qdwaxQAA, 5002K00000sdH2nQAE]]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 12 Apr 2019 20:29:42 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        3 years, 21 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_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, 21 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>21.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>david.storch@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>jacob.evans@mongodb.com</customfieldvalue>
            <customfieldvalue>justin.seyster@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hurlk7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr7gxb:</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="3612">Query 2020-08-24</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|hur7tj:</customfieldvalue>

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