<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 06:05:25 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-66437] Improve performance of IDhack plans in SBE</title>
                <link>https://jira.mongodb.org/browse/SERVER-66437</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;As part of PM-2371 we collected a perf profile for the SBE engine with the new SBE plan cache. Based on the collected results it appeared that the classic engine is still ~20% faster when executing IDhack plans and the plan cache project couldn&apos;t close this gap. We still spend a lot of time recovering the plan from the cache and preparing for execution in SBE. The classic engine does it dead simple but exercising through a fast path of constructing a plan consisting of a single stage. We need to find a way to allow the SBE engine to compete on this type of queries with the classic engine.&lt;/p&gt;</description>
                <environment></environment>
        <key id="2045657">SERVER-66437</key>
            <summary>Improve performance of IDhack plans in SBE</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="1" iconUrl="https://jira.mongodb.org/images/icons/statuses/open.png" description="">Open</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="backlog-query-execution">Backlog - Query Execution</assignee>
                                    <reporter username="anton.korshunov@mongodb.com">Anton Korshunov</reporter>
                        <labels>
                            <label>pm2697-m3</label>
                    </labels>
                <created>Thu, 12 May 2022 13:32:42 +0000</created>
                <updated>Tue, 28 Mar 2023 17:35:44 +0000</updated>
                                                                                                <votes>0</votes>
                                    <watches>15</watches>
                                                                                                                <comments>
                            <comment id="5306769" author="mihai.andrei" created="Tue, 28 Mar 2023 17:35:35 +0000"  >&lt;p&gt;Reopening this and moving it to pm-3243&lt;/p&gt;</comment>
                            <comment id="4874742" author="JIRAUSER1263795" created="Mon, 3 Oct 2022 21:34:23 +0000"  >&lt;p&gt;We have discussed the following options:&lt;/p&gt;

&lt;p&gt;a) fallback to classic ID hack&lt;/p&gt;

&lt;p&gt;b) use sbe &quot;franken id ID hack&quot;&lt;/p&gt;

&lt;p&gt;c) use prepared pool for ID hack eligible queries&lt;/p&gt;

&lt;p&gt;d) use prepared pool for wider range of queries&lt;/p&gt;

&lt;p&gt;Between options a),b),c) we decided that option a) is most appropriate in the shortterm. See slack discussion: &lt;a href=&quot;https://mongodb.slack.com/archives/C03FR20DLVD/p1664646211383049&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://mongodb.slack.com/archives/C03FR20DLVD/p1664646211383049&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Option d) is still viable, but is was deemed out of scope of Improve SBE performance epic. The following ticket tracks that work &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-69774&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.mongodb.org/browse/SERVER-69774&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4811091" author="JIRAUSER1255444" created="Thu, 8 Sep 2022 10:46:00 +0000"  >&lt;p&gt;Sorry for the ping-pong, assigning this back to Mihai per our discussion on ABT meeting.&lt;/p&gt;</comment>
                            <comment id="4798356" author="kyle.suarez" created="Fri, 2 Sep 2022 15:43:25 +0000"  >&lt;p&gt;Assigning to the venerable &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=nikita.lapkov%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;nikita.lapkov@mongodb.com&quot;&gt;nikita.lapkov@mongodb.com&lt;/a&gt; to drive this task for this sprint while Mihai is on vacation.&lt;/p&gt;</comment>
                            <comment id="4745737" author="JIRAUSER1263795" created="Thu, 11 Aug 2022 22:37:12 +0000"  >&lt;p&gt;&lt;a href=&quot;https://docs.google.com/document/d/1iYWU2N8230N0ipSIXeRkb8lyH-_qZB-o7ucuADCSZCA/edit?usp=sharing&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.google.com/document/d/1iYWU2N8230N0ipSIXeRkb8lyH-_qZB-o7ucuADCSZCA/edit?usp=sharing&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It looks like changed in the [Eric&apos;s prototype|&lt;a href=&quot;https://github.com/10gen/mongo/compare/master...eric/sbe-id-hack-perf&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://example.com&lt;/a&gt;] still result in -10% regression compared to classic. Even with franken idhack with single stage plan, similar to classic idhack, we still have -5% regression.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="4650776" author="xgen-internal-githook" created="Thu, 30 Jun 2022 16:01:24 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Eric Cox&apos;, &apos;email&apos;: &apos;eric.cox@mongodb.com&apos;, &apos;username&apos;: &apos;ericox&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-66437&quot; title=&quot;Improve performance of IDhack plans in SBE&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-66437&quot;&gt;SERVER-66437&lt;/a&gt; Refactor IndexScanStage to take seek keys as EExpressions&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/a372be3c03a6ab0ad96e62c6c241514b6ed699cb&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/a372be3c03a6ab0ad96e62c6c241514b6ed699cb&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="2078794">SERVER-67610</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="2078794">SERVER-67610</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2045585">SERVER-66435</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="2137965">SERVER-69751</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="397272" name="classicidhack.svg" size="301284" author="mihai.andrei@mongodb.com" created="Mon, 22 Aug 2022 19:04:37 +0000"/>
                            <attachment id="397910" name="sbefastidhack.svg" size="302522" author="mihai.andrei@mongodb.com" created="Wed, 24 Aug 2022 20:43:18 +0000"/>
                            <attachment id="397273" name="sbeidhack.svg" size="345000" author="mihai.andrei@mongodb.com" created="Mon, 22 Aug 2022 19:04:37 +0000"/>
                    </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>3.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25125"><![CDATA[Query Execution]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 13 Jun 2022 20:53:22 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        45 weeks, 1 day ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[<s><a href='https://jira.mongodb.org/browse/SERVER-67610'>SERVER-67610</a></s>]]></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-3243</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>mihai.andrei@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            45 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>anna.wawrzyniak@mongodb.com</customfieldvalue>
            <customfieldvalue>anton.korshunov@mongodb.com</customfieldvalue>
            <customfieldvalue>backlog-query-execution</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>kyle.suarez@mongodb.com</customfieldvalue>
            <customfieldvalue>mihai.andrei@mongodb.com</customfieldvalue>
            <customfieldvalue>nikita.lapkov@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i0uowv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i0dlnk:</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="5910">QE 2022-09-19</customfieldvalue>
    <customfieldvalue id="5912">QE 2022-10-03</customfieldvalue>
    <customfieldvalue id="5914">QE 2022-10-17</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10555" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.0</customfieldvalue>
                        </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|i0ub27:</customfieldvalue>

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