<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:01:43 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-22890] 3.2.3 performance regression</title>
                <link>https://jira.mongodb.org/browse/SERVER-22890</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;We have optimized core queries to work with few nscanned and low ms. This optimization works in 2.6.11 and 2.4.9.&lt;/p&gt;

&lt;p&gt;However, in 3.2.3 performance regressed badly.&lt;/p&gt;

&lt;p&gt;In 2.6.11 we have,&lt;br/&gt;
  &quot;nscanned&quot; : NumberInt(11), &lt;br/&gt;
    &quot;nscannedObjects&quot; : NumberInt(10), &lt;br/&gt;
    &quot;keyUpdates&quot; : NumberInt(0), &lt;br/&gt;
    &quot;numYield&quot; : NumberInt(0), &lt;br/&gt;
    &quot;millis&quot; : NumberInt(0)&lt;/p&gt;

&lt;p&gt;In 3.2.3 we have,&lt;br/&gt;
    &quot;keysExamined&quot; : NumberInt(10762703), &lt;br/&gt;
    &quot;docsExamined&quot; : NumberInt(2208753), &lt;br/&gt;
    &quot;numYield&quot; : NumberInt(84084), &lt;br/&gt;
    &quot;millis&quot; : NumberInt(33272), &lt;/p&gt;

&lt;p&gt;See the query, indexes, collection statistics and full profiler input in the attached document.&lt;/p&gt;

&lt;p&gt;Note that the documents in the PostKey2 collection are similar to the documents described in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-22872&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;SERVER-22872&lt;/a&gt;.&lt;/p&gt;</description>
                <environment></environment>
        <key id="268718">SERVER-22890</key>
            <summary>3.2.3 performance regression</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="3">Duplicate</resolution>
                                        <assignee username="david.storch@mongodb.com">David Storch</assignee>
                                    <reporter username="itwebtf@saxobank.com">ITWEBTF SAXOBANK</reporter>
                        <labels>
                    </labels>
                <created>Mon, 29 Feb 2016 14:02:54 +0000</created>
                <updated>Thu, 14 Apr 2016 00:21:07 +0000</updated>
                            <resolved>Mon, 29 Feb 2016 19:47:11 +0000</resolved>
                                    <version>3.2.3</version>
                                                    <component>Querying</component>
                                        <votes>0</votes>
                                    <watches>11</watches>
                                                                                                                <comments>
                            <comment id="1217721" author="itwebtf@saxobank.com" created="Tue, 29 Mar 2016 09:34:50 +0000"  >&lt;p&gt;Hi David,&lt;/p&gt;

&lt;p&gt;I have to disagree. Recognizing an escaped &apos;|&apos; as a non-escaped &apos;|&apos; is a bug, so fixing that particular issue is not a hack - rather it is a step in the right direction.&lt;/p&gt;

&lt;p&gt;I can see from the duplicates that other users have this problem, and I can partly understand why you would like to do a really good and maintainable bug fix for all these issues.&lt;/p&gt;

&lt;p&gt;However, &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16622&quot; title=&quot;RegEx query predicates using the | (vertical bar) character cannot use tight index bounds&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16622&quot;&gt;SERVER-16622&lt;/a&gt; was reported in December &apos;14 - more than a year ago - so it is about time to change the strategy on this.&lt;/p&gt;

&lt;p&gt;I strongly suggest that you make the analysis of a character string constituting the regex less &quot;simple&quot;, so that this (&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-22890&quot; title=&quot;3.2.3 performance regression&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-22890&quot;&gt;&lt;del&gt;SERVER-22890&lt;/del&gt;&lt;/a&gt;) issue is fixed. It may not be the grand solution that fixes all &quot;duplicates&quot; but it is a step in the right direction.&lt;/p&gt;

&lt;p&gt;Please re-open.&lt;/p&gt;

&lt;p&gt;Regards,&lt;br/&gt;
Brian&lt;/p&gt;
</comment>
                            <comment id="1211160" author="david.storch" created="Tue, 22 Mar 2016 14:34:47 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=itwebtf%40saxobank.com&quot; class=&quot;user-hover&quot; rel=&quot;itwebtf@saxobank.com&quot;&gt;itwebtf@saxobank.com&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;We could consider hacking a fix in which we recognize escaped &quot;|&quot; characters. Our engineering team has considered this proposal before. However, our view was that instead we should implement full regular expression parsing. Right now, we do some simple analysis of the character string constituting the regex rather than doing real regex parsing. A more comprehensive fix would also allow us to also tighten the bounds in cases where the &quot;|&quot; is escaped using the \Q...\E style, among other useful cases. Therefore, our preference is to continue to treat this as a duplicate of &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16622&quot; title=&quot;RegEx query predicates using the | (vertical bar) character cannot use tight index bounds&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16622&quot;&gt;SERVER-16622&lt;/a&gt;. Also, take a look at &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-20432&quot; title=&quot;$regex prefix search with escaped &amp;quot;|&amp;quot; should use tighter index bounds&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-20432&quot;&gt;&lt;del&gt;SERVER-20432&lt;/del&gt;&lt;/a&gt;, which I believe is the same request for handling escaped &quot;|&quot;.&lt;/p&gt;

&lt;p&gt;Our apologies for the difficulty that this has caused, but I hope you understand our desire to fix this in a manner that we consider correct and maintainable going forward.&lt;/p&gt;

&lt;p&gt;Best,&lt;br/&gt;
Dave&lt;/p&gt;</comment>
                            <comment id="1188752" author="itwebtf@saxobank.com" created="Tue, 1 Mar 2016 07:12:02 +0000"  >&lt;p&gt;Hi Dave,&lt;/p&gt;

&lt;p&gt;I see your point. However, after reading the &quot;duplicate&quot;, it seems that this could be handles as two very different bugs, hence this is not a duplicate.&lt;/p&gt;

&lt;p&gt;In my case, the pipe symbol is escaped, as you mentioned, which means that it should be looked up literally. In the &quot;duplicate&quot; the pipe symbols is supposed to be interpreted as a reg ex special symbol.&lt;/p&gt;

&lt;p&gt;I guess that handling the escaped pipe symbols could be a simple fix, thus you can reopen this incident.&lt;/p&gt;</comment>
                            <comment id="1188118" author="david.storch" created="Mon, 29 Feb 2016 19:46:00 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=itwebtf%40saxobank.com&quot; class=&quot;user-hover&quot; rel=&quot;itwebtf@saxobank.com&quot;&gt;itwebtf@saxobank.com&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;As I described in my &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-22872?focusedCommentId=1188108&amp;amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-1188108&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;comment here&lt;/a&gt; on &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-22872&quot; title=&quot;Order by is not working in 3.2.3&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-22872&quot;&gt;&lt;del&gt;SERVER-22872&lt;/del&gt;&lt;/a&gt;, any regular expression with the &quot;|&quot; character will have loose index bounds in 3.0.x or 3.2.x versions of MongoDB. These loose index bounds are currently required for correctness in order to fix &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-15235&quot; title=&quot;Regex query returns incorrect results when index is present&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-15235&quot;&gt;&lt;del&gt;SERVER-15235&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16622&quot; title=&quot;RegEx query predicates using the | (vertical bar) character cannot use tight index bounds&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16622&quot;&gt;SERVER-16622&lt;/a&gt; is an open feature request to allow tighter index bounds in the cases where it is correct to do so. In your case, it should be correct to use the tighter bounds, since your regular expression escapes the &quot;|&quot; character. Therefore, I am closing this ticket as a duplicate of &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16622&quot; title=&quot;RegEx query predicates using the | (vertical bar) character cannot use tight index bounds&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16622&quot;&gt;SERVER-16622&lt;/a&gt;. Please watch and vote for &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16622&quot; title=&quot;RegEx query predicates using the | (vertical bar) character cannot use tight index bounds&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16622&quot;&gt;SERVER-16622&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Best,&lt;br/&gt;
Dave&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="175660">SERVER-16622</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="157845">SERVER-15235</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="268318">SERVER-22872</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="111048" name="Mongo Performance.docx" size="18054" author="itwebtf@saxobank.com" created="Mon, 29 Feb 2016 14:02:54 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 29 Feb 2016 14:11:36 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        7 years, 46 weeks, 1 day 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>david.storch@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            7 years, 46 weeks, 1 day ago
                        </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>itwebtf@saxobank.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrkexr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hsivnj:</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_10750" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Steps To Reproduce</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;See the description above&lt;/p&gt;</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|hsf6pr:</customfieldvalue>

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