<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 09:00:55 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>[JAVA-3974] Async CryptBinding.retain() returns wrapped reference instead of this</title>
                <link>https://jira.mongodb.org/browse/JAVA-3974</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>&lt;p&gt;Implementations of &lt;tt&gt;ReferenceCounted.retain&lt;/tt&gt; should always return &lt;tt&gt;this&lt;/tt&gt;.  The implementation of &lt;tt&gt;com.mongodb.reactivestreams.client.internal.crypt.CryptBinding&lt;/tt&gt; instead returns &lt;tt&gt;wrapped.retain()&lt;/tt&gt;.  &lt;/p&gt;

&lt;p&gt;If a caller did something 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;   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;this.binding = binding.retain();&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;this could lead to bad outcomes, like failure to encrypt or decrypt documents.  While it doesn&apos;t appear that any driver code actually does this right now, we should still fix this to avoid future problems.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1603243">JAVA-3974</key>
            <summary>Async CryptBinding.retain() returns wrapped reference instead of this</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</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="jeff.yemin@mongodb.com">Jeffrey Yemin</assignee>
                                    <reporter username="jeff.yemin@mongodb.com">Jeffrey Yemin</reporter>
                        <labels>
                    </labels>
                <created>Thu, 28 Jan 2021 13:08:23 +0000</created>
                <updated>Sat, 28 Oct 2023 11:21:27 +0000</updated>
                            <resolved>Wed, 3 Feb 2021 16:17:26 +0000</resolved>
                                                    <fixVersion>4.3.0</fixVersion>
                                    <component>Reactive Streams</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="3597145" author="xgen-internal-githook" created="Wed, 3 Feb 2021 16:23:57 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Jeff Yemin&apos;, &apos;email&apos;: &apos;jeff.yemin@mongodb.com&apos;, &apos;username&apos;: &apos;jyemin&apos;}
&lt;p&gt;Message: Return `this` from CryptBinding.retain&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-3974&quot; title=&quot;Async CryptBinding.retain() returns wrapped reference instead of this&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-3974&quot;&gt;&lt;del&gt;JAVA-3974&lt;/del&gt;&lt;/a&gt;&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/605682cae738f93ae530e48defcb93479825bb01&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/605682cae738f93ae530e48defcb93479825bb01&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3588209" author="jeff.yemin" created="Thu, 28 Jan 2021 20:27:10 +0000"  >&lt;p&gt;Yes, that&apos;s true.  But that class in in test code, whereas this is production code, so I wanted to call this one out separately.&lt;/p&gt;</comment>
                            <comment id="3588094" author="JIRAUSER1258163" created="Thu, 28 Jan 2021 19:34:46 +0000"  >&lt;p&gt;&lt;tt&gt;AsyncSessionBinding.SessionBindingAsyncConnectionSource.retain&lt;/tt&gt; also returns not &lt;tt&gt;this&lt;/tt&gt; but &lt;tt&gt;wrapped.retain()&lt;/tt&gt;. This violates the contract specified by the &lt;tt&gt;ReferenceCounted.retain&lt;/tt&gt; method.&lt;/p&gt;

&lt;p&gt;Update: created &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-3975&quot; title=&quot;AsyncSessionBinding.retain and SessionBindingAsyncConnectionSource.retain return wrapped instead of this&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-3975&quot;&gt;&lt;del&gt;JAVA-3975&lt;/del&gt;&lt;/a&gt; to track this one.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10620">
                    <name>Issue split</name>
                                                                <inwardlinks description="split from">
                                        <issuelink>
            <issuekey id="1565193">JAVA-3907</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="1604715">JAVA-3975</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                        <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_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10257" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Documentation Changes</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11861"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr3o1b:</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>