<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:11:04 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>[DOCS-14729] Investigate changes in SERVER-54083: Include scores calculated by PlanRanker in explain &quot;queryPlanner&quot; output and/or &quot;allPlansExecution&quot;</title>
                <link>https://jira.mongodb.org/browse/DOCS-14729</link>
                <project id="10380" key="DOCS">Documentation</project>
                    <description>    &lt;div class=&quot;panel&quot; style=&quot;background-color: #c2d2c2;border-width: 1px;&quot;&gt;&lt;div class=&quot;panelHeader&quot; style=&quot;border-bottom-width: 1px;background-color: #239eb0;&quot;&gt;&lt;b&gt;Downstream Change Summary&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;panelContent&quot; style=&quot;background-color: #c2d2c2;&quot;&gt;
&lt;p&gt;    The scores calculated by PlanRanker during the trial period are now outputted alongside each candidate plan (both winning and rejected) in the &quot;allPlansExecution&quot; output (see below for exact location). Note that when &quot;allPlansExecution&quot; verbosity is selected, the score will not be outputted alongside the stats of the fully executed winning plan under the top level of &quot;executionStats&quot;, only alongside each plan in the &quot;allPlansExecution&quot; section. For queries where there is only one candidate plan the scores will not be outputted (&quot;allPlansExecution&quot; will be empty in this case anyway).&lt;/p&gt;

&lt;p&gt;&quot;allPlansExecution&quot; : [&lt;br/&gt;
      {&lt;br/&gt;
         &quot;nReturned&quot; : &amp;lt;int&amp;gt;,&lt;br/&gt;
         &quot;executionTimeMillisEstimate&quot; : &amp;lt;int&amp;gt;,&lt;br/&gt;
         &quot;totalKeysExamined&quot; : &amp;lt;int&amp;gt;,&lt;br/&gt;
         &quot;totalDocsExamined&quot; : &amp;lt;int&amp;gt;,&lt;br/&gt;
         &quot;score&quot; : &amp;lt;double&amp;gt;,&lt;br/&gt;
         &quot;executionStages&quot; : {&lt;br/&gt;
            &quot;stage&quot; : &amp;lt;STAGEA&amp;gt;,&lt;br/&gt;
            &quot;nReturned&quot; : &amp;lt;int&amp;gt;,&lt;br/&gt;
            &quot;executionTimeMillisEstimate&quot; : &amp;lt;int&amp;gt;,&lt;br/&gt;
            ...&lt;br/&gt;
            &quot;inputStage&quot; : {&lt;br/&gt;
               &quot;stage&quot; : &amp;lt;STAGEB&amp;gt;,&lt;br/&gt;
               ...&lt;br/&gt;
               &quot;inputStage&quot; : &lt;/p&gt;
&lt;div class=&quot;error&quot;&gt;&lt;span class=&quot;error&quot;&gt;Unknown macro: {
                 ...
               }&lt;/span&gt; &lt;/div&gt;
&lt;p&gt;            }&lt;br/&gt;
         }&lt;br/&gt;
      },&lt;br/&gt;
      ...&lt;br/&gt;
   ]&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;&lt;a name=&quot;DescriptionofLinkedTicket&quot;&gt;&lt;/a&gt;Description of Linked Ticket&lt;/h2&gt;
&lt;p&gt;    One important use case for explain is determining why the system chose one candidate plan as the winner and rejected others. This information can currently derived from &quot;allPlansExecution&quot; output, but this requires some internal knowledge of how the &lt;tt&gt;PlanRanker&lt;/tt&gt;&apos;s score calculation is implemented. Our internal Query Doctor tool, for example, calculates these scores itself (&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=christopher.harris&quot; class=&quot;user-hover&quot; rel=&quot;christopher.harris&quot;&gt;christopher.harris&lt;/a&gt; please correct me if this wrong). There is a risk that Query Doctor could end up diverging from the server&apos;s behavior with regards to plan score calculation, thereby misinterpreting the explain output.&lt;/p&gt;

&lt;p&gt;We should consider simplifying the situation by simply exposing the plan scores. These could be exposed alongside the &quot;winningPlan&quot; and each &quot;rejectedPlan&quot;, as well as alongside each plan in the &quot;allPlansExecution&quot; section. Although these scores are very much subject to change (or even go away entirely) as the internals of the query optimization subsystem change, I don&apos;t see a harm in exposing them. This is especially true given that explain&apos;s output format is excluded from the stable API, and is subject to change as the implementation details of the query system change.&lt;/p&gt;
</description>
                <environment></environment>
        <key id="1848445">DOCS-14729</key>
            <summary>Investigate changes in SERVER-54083: Include scores calculated by PlanRanker in explain &quot;queryPlanner&quot; output and/or &quot;allPlansExecution&quot;</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="10045" iconUrl="https://jira.mongodb.org/images/icons/statuses/generic.png" description="">Ready for Work</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="backlog-server-pm">Backlog - Core Eng Program Management Team</reporter>
                        <labels>
                            <label>query</label>
                    </labels>
                <created>Wed, 11 Aug 2021 09:04:47 +0000</created>
                <updated>Thu, 19 Oct 2023 18:44:08 +0000</updated>
                                                            <fixVersion>5.1.0-rc0</fixVersion>
                                    <component>Server</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                    <issuelinks>
                            <issuelinktype id="10320">
                    <name>Documented</name>
                                            <outwardlinks description="documents">
                                        <issuelink>
            <issuekey id="1602534">SERVER-54083</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>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 26 weeks 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>ashley.brown@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            2 years, 26 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-pm</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzxa4f:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hzhfj3:</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_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzwwdb:</customfieldvalue>

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