<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:14:49 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-2304] Deprecate mongoc_collection_update</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-2304</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;&lt;tt&gt;&lt;a href=&quot;http://mongoc.org/libmongoc/current/mongoc_collection_update.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;mongoc_collection_update&lt;/a&gt;&lt;/tt&gt; does not take a bson_t for options, but instead appends options to the command based on options from the flags argument (for multi, and upsert).&lt;/p&gt;

&lt;p&gt;Unfortunately there is no way to pass &quot;collation&quot; or &quot;arrayFilters&quot; to this function. We should deprecate use of this function after creating new functions &lt;tt&gt;mongoc_collection_update_one_with_opts&lt;/tt&gt; and &lt;tt&gt;mongoc_collection_update_many_with_opts&lt;/tt&gt;.&lt;/p&gt;</description>
                <environment></environment>
        <key id="433726">CDRIVER-2304</key>
            <summary>Deprecate mongoc_collection_update</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</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="jesse@mongodb.com">A. Jesse Jiryu Davis</assignee>
                                    <reporter username="kevin.albertson@mongodb.com">Kevin Albertson</reporter>
                        <labels>
                    </labels>
                <created>Wed, 27 Sep 2017 14:57:33 +0000</created>
                <updated>Sat, 28 Oct 2023 11:30:25 +0000</updated>
                            <resolved>Mon, 30 Oct 2017 19:14:54 +0000</resolved>
                                                    <fixVersion>1.9.0</fixVersion>
                                    <component>libmongoc</component>
                                        <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="1712849" author="jesse" created="Mon, 30 Oct 2017 19:14:54 +0000"  >&lt;p&gt;Closing. I&apos;m not going to mark mongoc_collection_update with BSON_GNUC_DEPRECATED_FOR since that could cause more disruption than it&apos;s worth in users&apos; code. Kevin has documented it:&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;   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;Superseded by :symbol:`mongoc_collection_update_one_with_opts`, :symbol:`mongoc_collection_update_many_with_opts`, and :symbol:`mongoc_collection_replace_one_with_opts`.&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;It&apos;s ok for mongoc_collection_save to continue calling this superseded function, in any case, since mongoc_collection_save itself is actually deprecated. If there is ever a libmongoc 2.0 we can choose to delete mongoc_collection_save and mongoc_collection_update simultaneously.&lt;/p&gt;</comment>
                            <comment id="1708153" author="xgen-internal-githook" created="Wed, 25 Oct 2017 01:53:30 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: Merge remote-tracking branch &apos;upstream/master&apos;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;upstream/master:&lt;br/&gt;
  ignore example-update&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2308&quot; title=&quot;Run live tests through valgrind&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2308&quot;&gt;&lt;del&gt;CDRIVER-2308&lt;/del&gt;&lt;/a&gt; run live tests through valgrind&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2304&quot; title=&quot;Deprecate mongoc_collection_update&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2304&quot;&gt;&lt;del&gt;CDRIVER-2304&lt;/del&gt;&lt;/a&gt; remove collection_update from docs&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2326&quot; title=&quot;SRV polling spec prose tests should be numbered&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2326&quot;&gt;CXX-2326&lt;/a&gt; Can&apos;t disable zlib with --with-zlib=no&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/4f5342bcb1536e1f73494705fbb2918ef848c9cf&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/4f5342bcb1536e1f73494705fbb2918ef848c9cf&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="1699612" author="kevin.albertson" created="Mon, 16 Oct 2017 13:49:58 +0000"  >&lt;p&gt;I did not add the BSON_GNUC_DEPRECATED_FOR to collection_update because it is&lt;br/&gt;
currently used by collection_save.&lt;/p&gt;

&lt;p&gt;If I were to replace this call with collection_update_one or&lt;br/&gt;
collection_replace_one, this would change behavior. Why? Because it uses&lt;br/&gt;
MONGOC_UPDATE_NO_VALIDATE to skip validation when calling collection_update. The&lt;br/&gt;
update_one/replace_one functions do not yet allow skipping validation. This depends on the work done in &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2265&quot; title=&quot;Overly validating documents in bulk inserts&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2265&quot;&gt;&lt;del&gt;CDRIVER-2265&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If we do add an option, than we can easily replace the call to collection_update&lt;br/&gt;
with collection_update_one and skip validation. If we do not, then we&apos;d have to&lt;br/&gt;
check in collection_save whether to call replace or update.&lt;/p&gt;</comment>
                            <comment id="1699600" author="xgen-internal-githook" created="Mon, 16 Oct 2017 13:47:11 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;kevin.albertson@10gen.com&apos;, &apos;name&apos;: &apos;Kevin Albertson&apos;, &apos;username&apos;: &apos;kevinAlbs&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2304&quot; title=&quot;Deprecate mongoc_collection_update&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2304&quot;&gt;&lt;del&gt;CDRIVER-2304&lt;/del&gt;&lt;/a&gt; remove collection_update from docs&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/33575cabc102de5cb44595a402a06524155f2774&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/33575cabc102de5cb44595a402a06524155f2774&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="424368">CDRIVER-2265</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="725905">CDRIVER-3054</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </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|ht7nzr:</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>