<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:27:05 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-31447] Ensure change stream update lookup uses the correct collation</title>
                <link>https://jira.mongodb.org/browse/SERVER-31447</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;When doing the updateLookup as part of a change stream, it is important both to use the simple collation to target the lookup when the collection is sharded and to use the collection-default collation on the shard when the collection is not sharded and the update lookup is executing on the mongod itself.&lt;/p&gt;

&lt;p&gt;In order to target only one shard, we need to have the simple collation and an exact match on the shard key. When we get to the shard, it is always correct to use the simple collation, but it may not be able to use the _id index if the collection has a non-simple default collation.&lt;/p&gt;

&lt;p&gt;If possible, the ideal world on mongos would be to target using the simple collation, then send the aggregate responsible to the lookup without specifying a collation, allowing it to inherit the collection&apos;s default collation. The desired behavior on mongod is to always use the collection&apos;s default collation for the lookup.&lt;/p&gt;</description>
                <environment></environment>
        <key id="441768">SERVER-31447</key>
            <summary>Ensure change stream update lookup uses the correct collation</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="charlie.swanson@mongodb.com">Charlie Swanson</assignee>
                                    <reporter username="charlie.swanson@mongodb.com">Charlie Swanson</reporter>
                        <labels>
                            <label>bkp</label>
                    </labels>
                <created>Fri, 6 Oct 2017 18:35:33 +0000</created>
                <updated>Mon, 30 Oct 2023 23:13:00 +0000</updated>
                            <resolved>Wed, 15 Nov 2017 16:00:32 +0000</resolved>
                                                    <fixVersion>3.6.0-rc5</fixVersion>
                    <fixVersion>3.7.1</fixVersion>
                                    <component>Aggregation Framework</component>
                    <component>Replication</component>
                                        <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="1726523" author="xgen-internal-githook" created="Wed, 15 Nov 2017 15:59:52 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Charlie Swanson&apos;, &apos;username&apos;: &apos;cswanson310&apos;, &apos;email&apos;: &apos;charlie.swanson@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-31447&quot; title=&quot;Ensure change stream update lookup uses the correct collation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-31447&quot;&gt;&lt;del&gt;SERVER-31447&lt;/del&gt;&lt;/a&gt; Use correct collation for update lookup&lt;/p&gt;

&lt;p&gt;(cherry picked from commit e37db69674486dff9fdac2b5ee41961a8805804b)&lt;br/&gt;
Branch: v3.6&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/f3fa1f280c22e6a93b610deae892ce001b02d106&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/f3fa1f280c22e6a93b610deae892ce001b02d106&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1726519" author="xgen-internal-githook" created="Wed, 15 Nov 2017 15:57:36 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Charlie Swanson&apos;, &apos;username&apos;: &apos;cswanson310&apos;, &apos;email&apos;: &apos;charlie.swanson@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-31447&quot; title=&quot;Ensure change stream update lookup uses the correct collation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-31447&quot;&gt;&lt;del&gt;SERVER-31447&lt;/del&gt;&lt;/a&gt; Use correct collation for update lookup&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/e37db69674486dff9fdac2b5ee41961a8805804b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/e37db69674486dff9fdac2b5ee41961a8805804b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1726508" author="charlie.swanson" created="Wed, 15 Nov 2017 15:53:35 +0000"  >&lt;p&gt;Looks like I just typo-ed in the blacklist and failed to double check that it was actually working. I did add a &lt;tt&gt;jstests/sharding/change_stream_update_lookup_collation.js&lt;/tt&gt;, but not a &lt;tt&gt;jstests/sharding/change_stream*s*_update_lookup_collation.js&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;Fixed locally, verifying burn_in_tests now runs and it&apos;s excluded from the last stable mongos suite before pushing again.&lt;/p&gt;</comment>
                            <comment id="1726050" author="max.hirschhorn@10gen.com" created="Wed, 15 Nov 2017 03:02:13 +0000"  >&lt;p&gt;I&apos;ve reverted the changes from the &lt;a href=&quot;https://github.com/mongodb/mongo/commit/de0b16077945eb6b6ec161b99f41c3222aade3b8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;de0b160&lt;/a&gt; on the master branch and the changes from &lt;a href=&quot;https://github.com/mongodb/mongo/commit/347535f06861412f52c81bbf260fe253f0bf2041&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;347535f&lt;/a&gt; on the v3.6 branch because it wasn&apos;t clear what the intention with the &lt;tt&gt;jstests/sharding/change_streams_update_lookup_collation.js&lt;/tt&gt; blacklist entry is. Per a Slack conversation, Charlie wasn&apos;t sure if there&apos;s a test that failed to be added to the &lt;tt&gt;jstests/sharding/&lt;/tt&gt; directory, or if the blacklist entry was added in error given that there&apos;s a test with the same basename in the &lt;tt&gt;jstests/noPassthrough/&lt;/tt&gt; directory.&lt;/p&gt;</comment>
                            <comment id="1726045" author="xgen-internal-githook" created="Wed, 15 Nov 2017 02:57:57 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Max Hirschhorn&apos;, &apos;username&apos;: &apos;visemet&apos;, &apos;email&apos;: &apos;max.hirschhorn@mongodb.com&apos;}
&lt;p&gt;Message: Revert &quot;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-31447&quot; title=&quot;Ensure change stream update lookup uses the correct collation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-31447&quot;&gt;&lt;del&gt;SERVER-31447&lt;/del&gt;&lt;/a&gt; Use correct collation for update lookup&quot;&lt;/p&gt;

&lt;p&gt;This reverts commit 347535f06861412f52c81bbf260fe253f0bf2041.&lt;br/&gt;
Branch: v3.6&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/c0cb7856ff26ca60f197e984ae7b9f3ba5cc64fe&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/c0cb7856ff26ca60f197e984ae7b9f3ba5cc64fe&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1726042" author="xgen-internal-githook" created="Wed, 15 Nov 2017 02:54:01 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Max Hirschhorn&apos;, &apos;username&apos;: &apos;visemet&apos;, &apos;email&apos;: &apos;max.hirschhorn@mongodb.com&apos;}
&lt;p&gt;Message: Revert &quot;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-31447&quot; title=&quot;Ensure change stream update lookup uses the correct collation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-31447&quot;&gt;&lt;del&gt;SERVER-31447&lt;/del&gt;&lt;/a&gt; Use correct collation for update lookup&quot;&lt;/p&gt;

&lt;p&gt;This reverts commit de0b16077945eb6b6ec161b99f41c3222aade3b8.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/b683d39549b033a516c1c8bdbae7040eafe99266&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/b683d39549b033a516c1c8bdbae7040eafe99266&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1725819" author="xgen-internal-githook" created="Tue, 14 Nov 2017 22:38:44 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Charlie Swanson&apos;, &apos;username&apos;: &apos;cswanson310&apos;, &apos;email&apos;: &apos;charlie.swanson@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-31447&quot; title=&quot;Ensure change stream update lookup uses the correct collation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-31447&quot;&gt;&lt;del&gt;SERVER-31447&lt;/del&gt;&lt;/a&gt; Use correct collation for update lookup&lt;br/&gt;
Branch: v3.6&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/347535f06861412f52c81bbf260fe253f0bf2041&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/347535f06861412f52c81bbf260fe253f0bf2041&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1725804" author="xgen-internal-githook" created="Tue, 14 Nov 2017 22:23:46 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Charlie Swanson&apos;, &apos;username&apos;: &apos;cswanson310&apos;, &apos;email&apos;: &apos;charlie.swanson@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-31447&quot; title=&quot;Ensure change stream update lookup uses the correct collation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-31447&quot;&gt;&lt;del&gt;SERVER-31447&lt;/del&gt;&lt;/a&gt; Use correct collation for update lookup&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/de0b16077945eb6b6ec161b99f41c3222aade3b8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/de0b16077945eb6b6ec161b99f41c3222aade3b8&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1692901" author="david.storch" created="Mon, 9 Oct 2017 13:54:16 +0000"  >&lt;p&gt;That sounds right. It boils down to using the simple collation for targeting but inheriting the collection default collation for actually doing the lookup (so that you can do a point lookup on the &lt;tt&gt;_id&lt;/tt&gt; index).&lt;/p&gt;</comment>
                            <comment id="1691823" author="tess.avitabile" created="Fri, 6 Oct 2017 18:49:53 +0000"  >&lt;p&gt;LGTM&lt;/p&gt;</comment>
                            <comment id="1691810" author="charlie.swanson" created="Fri, 6 Oct 2017 18:36:31 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=tess.avitabile&quot; class=&quot;user-hover&quot; rel=&quot;tess.avitabile&quot;&gt;tess.avitabile&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=david.storch&quot; class=&quot;user-hover&quot; rel=&quot;david.storch&quot;&gt;david.storch&lt;/a&gt;, and &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=spencer&quot; class=&quot;user-hover&quot; rel=&quot;spencer&quot;&gt;spencer&lt;/a&gt; - does this description look correct to you?&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="441730">SERVER-31442</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="441741">SERVER-31443</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>11.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_12450" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Backport Requested</customfieldname>
                        <customfieldvalues>
                                <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_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 6 Oct 2017 18:49:53 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        6 years, 13 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_14262" key="com.atlassian.jira.plugin.system.customfieldtypes:datepicker">
                        <customfieldname>End date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 6 Oct 2017 00:00:00 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-89</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>
                            6 years, 13 weeks 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>charlie.swanson@mongodb.com</customfieldvalue>
            <customfieldvalue>david.storch@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>max.hirschhorn@mongodb.com</customfieldvalue>
            <customfieldvalue>tess.avitabile@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hth8nr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|ht950v:</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="1915">Repl 2017-10-23</customfieldvalue>
    <customfieldvalue id="1931">Repl 2017-11-13</customfieldvalue>
    <customfieldvalue id="1957">Repl 2017-12-04</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_14261" key="com.atlassian.jira.plugin.system.customfieldtypes:datepicker">
                        <customfieldname>Start date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 6 Oct 2017 00:00:00 +0000</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|htgurj:</customfieldvalue>

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