<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:18:09 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>[CDRIVER-3477] _mongoc_bulk_operation_update_append does not update has_array_filters for subsequent update operations</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-3477</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2664&quot; title=&quot;Raise client error if arrayFilters option is used when unsupported&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2664&quot;&gt;&lt;del&gt;CDRIVER-2664&lt;/del&gt;&lt;/a&gt; added tracking of &lt;tt&gt;arrayFilters&lt;/tt&gt; in &lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/c4af4aaec49957918fe7e5b3cc27e91875cca7bf&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;c4af4aa&lt;/a&gt; so that an error could be raised if the option was used for unsupported servers. While implementing support for the &lt;tt&gt;hint&lt;/tt&gt; option in &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-3400&quot; title=&quot;support ability to pass hint to update&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-3400&quot;&gt;&lt;del&gt;CDRIVER-3400&lt;/del&gt;&lt;/a&gt;, I realized that &lt;tt&gt;_mongoc_bulk_operation_update_append&lt;/tt&gt; only appears to set &lt;tt&gt;mongoc_write_command_t.flags.has_array_filters&lt;/tt&gt; when initializing a new &lt;tt&gt;update&lt;/tt&gt; command in the bulk. This is in contract to the existing &lt;tt&gt;has_collation&lt;/tt&gt; and &lt;tt&gt;has_multi_write&lt;/tt&gt; flags, which are also updated with an &lt;tt&gt;|=&lt;/tt&gt; assignment when appending an update operation to an existing &lt;tt&gt;update&lt;/tt&gt; command.&lt;/p&gt;

&lt;p&gt;Assuming this was an oversight, I think the appropriate test would be to execute a bulk write with two updates against a &amp;lt;3.6 server when only the second update uses &lt;tt&gt;arrayFilters&lt;/tt&gt;. The driver should raise a client-side error to conform with the CRUD specification. Rather than implement this as a prose test specific to the C driver, it may make sense to contribute it directly to the specifications repo so all drivers can benefit.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1080789">CDRIVER-3477</key>
            <summary>_mongoc_bulk_operation_update_append does not update has_array_filters for subsequent update operations</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="roberto.sanchez@mongodb.com">Roberto Sanchez</assignee>
                                    <reporter username="jmikola@mongodb.com">Jeremy Mikola</reporter>
                        <labels>
                            <label>low-hanging-fruits</label>
                            <label>new-eng</label>
                    </labels>
                <created>Wed, 8 Jan 2020 20:10:09 +0000</created>
                <updated>Sat, 28 Oct 2023 11:28:59 +0000</updated>
                            <resolved>Mon, 18 May 2020 17:30:40 +0000</resolved>
                                                    <fixVersion>1.17.0-beta2</fixVersion>
                    <fixVersion>1.17.0</fixVersion>
                                    <component>Bulk API</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="3106184" author="xgen-internal-githook" created="Mon, 25 May 2020 21:14:33 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Roberto C. S&#225;nchez&apos;, &apos;email&apos;: &apos;roberto@connexer.com&apos;, &apos;username&apos;: &apos;rcsanchez97&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-3477&quot; title=&quot;_mongoc_bulk_operation_update_append does not update has_array_filters for subsequent update operations&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-3477&quot;&gt;&lt;del&gt;CDRIVER-3477&lt;/del&gt;&lt;/a&gt; handle arrayFilters on second and subsequent ops&lt;br/&gt;
Branch: r1.17&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/1ea6d4b398e80342bb9c911ed2109d0d0cf6a3e7&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/1ea6d4b398e80342bb9c911ed2109d0d0cf6a3e7&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3093261" author="xgen-internal-githook" created="Mon, 18 May 2020 17:28:25 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Roberto C. S&#225;nchez&apos;, &apos;email&apos;: &apos;roberto@connexer.com&apos;, &apos;username&apos;: &apos;rcsanchez97&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-3477&quot; title=&quot;_mongoc_bulk_operation_update_append does not update has_array_filters for subsequent update operations&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-3477&quot;&gt;&lt;del&gt;CDRIVER-3477&lt;/del&gt;&lt;/a&gt; handle arrayFilters on second and subsequent ops&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/c63f92c305234d4595caf2bf73111ad08c83342d&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/c63f92c305234d4595caf2bf73111ad08c83342d&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3082489" author="roberto.sanchez" created="Wed, 13 May 2020 02:40:52 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jmikola&quot; class=&quot;user-hover&quot; rel=&quot;jmikola&quot;&gt;jmikola&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=kevin.albertson&quot; class=&quot;user-hover&quot; rel=&quot;kevin.albertson&quot;&gt;kevin.albertson&lt;/a&gt;, I have what I believe to be an appropriate spec test that captures this scenario.  Should I write a SPEC and/or DRIVERS ticket, or just go straight to a PR in the specifications repo?&lt;/p&gt;</comment>
                            <comment id="3081739" author="roberto.sanchez" created="Tue, 12 May 2020 19:25:51 +0000"  >&lt;p&gt;In order to successfully execute bulkWrite against a server &amp;lt;3.6, it is necessary that the CRUD test suite not require sessions, thus blocking on &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-3531&quot; title=&quot;Do not require session support to run CRUD tests&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-3531&quot;&gt;&lt;del&gt;CDRIVER-3531&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="1141785">CDRIVER-3531</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="1352589">CDRIVER-3675</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="549443">CDRIVER-2664</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="974570">CDRIVER-3400</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1352590">CXX-2019</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hw3rfj:</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>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>