<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 22:04:24 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>[CXX-1939] Revisit deprecation of client read_concern, write_concern, and read_preference methods</title>
                <link>https://jira.mongodb.org/browse/CXX-1939</link>
                <project id="11980" key="CXX">C++ Driver</project>
                    <description>&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1086&quot; title=&quot;Deprecate non-const methods on mongocxx::client&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-1086&quot;&gt;&lt;del&gt;CXX-1086&lt;/del&gt;&lt;/a&gt; deprecated several methods on client that deal with setting and getting read_concern, write_concern, and read_preference.&#160; However, if&#160;&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-3537&quot; title=&quot;Pooled clients should clear state when pushed back onto the pool&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-3537&quot;&gt;CDRIVER-3537&lt;/a&gt;&#160;is fixed, these methods may no longer be problematic.&#160; Additionally, there are several related methods on client that were&#160;&lt;em&gt;not&lt;/em&gt; deprecated in &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1086&quot; title=&quot;Deprecate non-const methods on mongocxx::client&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-1086&quot;&gt;&lt;del&gt;CXX-1086&lt;/del&gt;&lt;/a&gt;, including the getters for read_concern and read_preference.&#160; Revisit these and either deprecate/remove all related methods, or un-deprecate them once the C driver can accommodate these settings.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1145135">CXX-1939</key>
            <summary>Revisit deprecation of client read_concern, write_concern, and read_preference methods</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="10038" iconUrl="https://jira.mongodb.org/images/icons/subtask.gif" description="">Backlog</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="samantha.ritter@mongodb.com">Samantha Ritter</reporter>
                        <labels>
                    </labels>
                <created>Wed, 12 Feb 2020 20:25:06 +0000</created>
                <updated>Thu, 31 Mar 2022 14:25:59 +0000</updated>
                                                                                                <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="2876836" author="kevin.albertson" created="Thu, 13 Feb 2020 16:48:33 +0000"  >&lt;p&gt;Copying my comment from the code review of &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1931&quot; title=&quot;Remove code deprecated in previous releases&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-1931&quot;&gt;&lt;del&gt;CXX-1931&lt;/del&gt;&lt;/a&gt; regarding the deprecation of the read_concern setter on a client:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;This reasoning seems slightly wrong. The same logic applies to setting a&lt;br/&gt;
read/write concern at the database level. It won&apos;t apply to collection instances&lt;br/&gt;
that have already been created.&lt;/p&gt;

&lt;p&gt;I looked at the ticket that deprecated this,&lt;br/&gt;
&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1086&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.mongodb.org/browse/CXX-1086&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The more compelling reason is that the documentation for&lt;br/&gt;
mongoc_client_set_read_concern has the warning:&lt;/p&gt;

&lt;p&gt;&quot;It is a programming error to call this function on a client from a&lt;br/&gt;
mongoc_client_pool_t. For pooled clients, set the read concern with the MongoDB&lt;br/&gt;
URI instead.&quot;&lt;/p&gt;

&lt;p&gt;See: &lt;a href=&quot;http://mongoc.org/libmongoc/current/mongoc_client_set_read_concern.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://mongoc.org/libmongoc/current/mongoc_client_set_read_concern.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After a little bit of digging, it seems the reason is that a read concern set on&lt;br/&gt;
a pooled client isn&apos;t cleared before being pushed back onto the pool:&lt;br/&gt;
&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-3537&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.mongodb.org/browse/CDRIVER-3537&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If that were fixed, I wonder if there&apos;s still a reason to have this deprecated.&lt;/p&gt;&lt;/blockquote&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="1144945">CDRIVER-3537</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="1141869">CXX-1931</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|hwe6xj:</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>