<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:15:33 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-16516] Investigate changes in SERVER-79514: Make value comparison consistent in MatchExpression</title>
                <link>https://jira.mongodb.org/browse/DOCS-16516</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;Original Downstream Change Summary&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;TLDR: partial indexes with the same index keys and the same partial expressions compared using their collation are not allowed any more.&lt;/p&gt;

&lt;p&gt;Partial filter expression used not to be validated using provided collation as a result, it was possible to create two equivalent indexes:&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;   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;db.coll.createIndex({a: 1}, {name: &quot;index0&quot;, { locale: &quot;en_US&quot;, strength: 1 }, partialFilterExpression: {b: &quot;case&quot;}};&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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-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;db.coll.createIndex({a: 1}, {name: &quot;index1&quot;,{ locale: &quot;en_US&quot;, strength: 1 }, partialFilterExpression: {b: &quot;CASE&quot;}};&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;

&lt;p&gt;However, only the first index &lt;tt&gt;index0&lt;/tt&gt; will be used to answer queries like&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;   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;db.coll.find({a: 1, b: &quot;case&quot;}).collation({ locale: &quot;en_US&quot;, strength: 1 });&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;db.coll.find({a: 1, b: &quot;CASE&quot;}).collation({ locale: &quot;en_US&quot;, strength: 1 });&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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-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;db.coll.find({a: 1, b: &quot;Case&quot;}).collation({ locale: &quot;en_US&quot;, strength: 1 });&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;

&lt;p&gt;&lt;tt&gt;index1&lt;/tt&gt; would be never used.&lt;/p&gt;

&lt;p&gt;After the change the second &lt;tt&gt;index1&lt;/tt&gt; will be prevented from creating with the following error:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;MongoServerError: Index already exists with a different name: index0&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;Nothing changed for databases with existing duplicating partial indexes, the indexes will be kept and only the first created index will be used to serve the queries as it was before.&lt;/p&gt;
&lt;h2&gt;&lt;a name=&quot;DescriptionofLinkedTicket&quot;&gt;&lt;/a&gt;Description of Linked Ticket&lt;/h2&gt;

&lt;p&gt;&lt;tt&gt;equivalent()&lt;/tt&gt; function should compare BSONElements consistently in comparison and $in operators.&lt;/p&gt;</description>
                <environment></environment>
        <key id="2510572">DOCS-16516</key>
            <summary>Investigate changes in SERVER-79514: Make value comparison consistent in MatchExpression</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="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="9">Done</resolution>
                                        <assignee username="jason.price@mongodb.com">Jason Price</assignee>
                                    <reporter username="backlog-server-pm">Backlog - Core Eng Program Management Team</reporter>
                        <labels>
                            <label>feature</label>
                    </labels>
                <created>Tue, 28 Nov 2023 12:58:43 +0000</created>
                <updated>Mon, 8 Jan 2024 17:03:48 +0000</updated>
                            <resolved>Thu, 7 Dec 2023 18:23:07 +0000</resolved>
                                                    <fixVersion>7.3.0-rc0</fixVersion>
                    <fixVersion>Server_Docs_[20240108]</fixVersion>
                                    <component>manual</component>
                    <component>Server</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="5931089" author="JIRAUSER1264463" created="Wed, 6 Dec 2023 21:19:47 +0000"  >&lt;p&gt;Many thanks &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jason.price%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jason.price@mongodb.com&quot;&gt;jason.price@mongodb.com&lt;/a&gt;!&lt;/p&gt;</comment>
                            <comment id="5931002" author="JIRAUSER1254808" created="Wed, 6 Dec 2023 20:52:16 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=sarah.olson%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;sarah.olson@mongodb.com&quot;&gt;sarah.olson@mongodb.com&lt;/a&gt; Added story points.&lt;/p&gt;</comment>
                            <comment id="5930980" author="JIRAUSER1264463" created="Wed, 6 Dec 2023 20:48:35 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jason.price%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jason.price@mongodb.com&quot;&gt;jason.price@mongodb.com&lt;/a&gt;, can you please add story points to this ticket?&#160;&lt;/p&gt;</comment>
                            <comment id="5930504" author="JIRAUSER1254808" created="Wed, 6 Dec 2023 18:42:53 +0000"  >&lt;p&gt;&lt;a href=&quot;https://github.com/10gen/docs-mongodb-internal/pull/5485&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/10gen/docs-mongodb-internal/pull/5485&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10320">
                    <name>Documented</name>
                                            <outwardlinks description="documents">
                                        <issuelink>
            <issuekey id="2405412">SERVER-79514</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>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_14258" key="com.atlassian.jira.plugin.system.customfieldtypes:datepicker">
                        <customfieldname>Baseline start date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 1 Dec 2023 00:00:00 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 6 Dec 2023 18:42:53 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        9 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_14876" key="com.atlassian.jira.plugin.system.customfieldtypes:userpicker">
                        <customfieldname>Docs Reviewer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>sarah.olson@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_17052" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Downstream Changes Summary</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>TLDR: partial indexes with the same index keys and the same partial expressions compared using their collation are not allowed any more.&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
Partial filter expression used not to be validated using provided collation as a result, it was possible to create two equivalent indexes:&lt;br/&gt;
&lt;br/&gt;
{{code}}&lt;br/&gt;
db.coll.createIndex({a: 1}, {name: &amp;quot;index0&amp;quot;, { locale: &amp;quot;en_US&amp;quot;, strength: 1 }, partialFilterExpression: {b: &amp;quot;case&amp;quot;}};&lt;br/&gt;
&lt;br/&gt;
db.coll.createIndex({a: 1}, {name: &amp;quot;index1&amp;quot;, { locale: &amp;quot;en_US&amp;quot;, strength: 1 }, partialFilterExpression: {b: &amp;quot;CASE&amp;quot;}};&lt;br/&gt;
{{code}}&lt;br/&gt;
&lt;br/&gt;
However, only the first index {{index0}} will be used to answer queries like&lt;br/&gt;
&lt;br/&gt;
{{code}}&lt;br/&gt;
db.coll.find({a: 1, b: &amp;quot;case&amp;quot;}).collation({ locale: &amp;quot;en_US&amp;quot;, strength: 1 }).explain();&lt;br/&gt;
db.coll.find({a: 1, b: &amp;quot;CASE&amp;quot;}).collation({ locale: &amp;quot;en_US&amp;quot;, strength: 1 }).explain();&lt;br/&gt;
db.coll.find({a: 1, b: &amp;quot;Case&amp;quot;}).collation({ locale: &amp;quot;en_US&amp;quot;, strength: 1 }).explain();&lt;br/&gt;
{{code}}&lt;br/&gt;
&lt;br/&gt;
{{index1}} would be never used.&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
After the change the second {{index1}} will be prevented from creating with the following error:&lt;br/&gt;
&lt;br/&gt;
{{MongoServerError: Index already exists with a different name: index0}}&lt;br/&gt;
&lt;br/&gt;
Nothing changed for databases with existing duplicating partial indexes, the indexes will be kept and only the first created index will be used to serve the queries as it was before.</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_14873" key="com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker">
                        <customfieldname>External Reviewer</customfieldname>
                        <customfieldvalues>
                                    <customfieldvalue><![CDATA[alexander.ignatyev@mongodb.com]]></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>emet.ozar@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            9 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-pm</customfieldvalue>
            <customfieldvalue>jason.price@mongodb.com</customfieldvalue>
            <customfieldvalue>sarah.olson@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i32747:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i2jzx8:</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_10555" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</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_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i31t9j:</customfieldvalue>

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