<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 22:05:47 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-2393] Drivers should retry operations if connection handshake fails</title>
                <link>https://jira.mongodb.org/browse/CXX-2393</link>
                <project id="11980" key="CXX">C++ Driver</project>
                    <description>&lt;p&gt;This ticket was split from &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-746&quot; title=&quot;Drivers should retry operations if connection handshake fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-746&quot;&gt;DRIVERS-746&lt;/a&gt;, please see that ticket for a detailed description.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1902486">CXX-2393</key>
            <summary>Drivers should retry operations if connection handshake fails</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="ezra.chung@mongodb.com">Ezra Chung</assignee>
                                    <reporter username="dbeng-pm-bot">PM Bot</reporter>
                        <labels>
                            <label>size-xsmall</label>
                    </labels>
                <created>Tue, 19 Oct 2021 19:20:54 +0000</created>
                <updated>Sat, 28 Oct 2023 11:26:50 +0000</updated>
                            <resolved>Fri, 31 Mar 2023 20:18:18 +0000</resolved>
                                                    <fixVersion>3.8.0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="5634967" author="xgen-internal-githook" created="Tue, 15 Aug 2023 14:10:08 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Ezra Chung&apos;, &apos;email&apos;: &apos;88335979+eramongodb@users.noreply.github.com&apos;, &apos;username&apos;: &apos;eramongodb&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1848&quot; title=&quot;Test against sharded clusters in evergreen&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-1848&quot;&gt;&lt;del&gt;CXX-1848&lt;/del&gt;&lt;/a&gt; Add sharded cluster test coverage to EVG config (#1007)&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Move legacy transaction spec tests into subdirectory&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Sync legacy transaction spec tests with 56454749 (&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2406&quot; title=&quot;Make retryable write test error labels behave consistently with server&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2406&quot;&gt;CXX-2406&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Sync legacy transactions convenient API spec tests with e9280056 (&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1976&quot; title=&quot;Add RetryableWriteError error labels to retryable transaction tests&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-1976&quot;&gt;&lt;del&gt;CXX-1976&lt;/del&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Remove references to obsolete &quot;sharded-replicaset&quot; topology&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix inconsistent behavior of index_view::create_*() on sharded clusters&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;The failCommand operation on mongos requires 4.1+&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Multi-document transactions require 4.2+&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix legacy test runner outcome checks missing readPreference=primary&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix flaky tailable await cursors tests due to extreme maxAwaitTimeMS&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Remove unused configureFailPoint operation in legacy test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Ensure configureFailPoint events are ignored&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Improve apm_checker::print_all() output and const-correctness&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Capture APM events in result assertion failures&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Use Catch2 substring matcher instead of index comparison&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix operation name match for assertSessionUnpinned&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Update session pin assertion operations&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Do not assume session object name when not session0&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add transactions mongos pinning prose tests&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Improve failure messages for APM event checks in legacy test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add Catch2 sections separating legacy transactions and convenient API tests&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Handle client errors reported as logic_error in legacy test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Skip legacy transactions test requiring explicit readPreference with runCommand&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Update legacy transactions test runner to conform to latest spec&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Implement assertSessionTransactionState in legacy test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Implement targetedFailPoint in legacy test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Sync unified transaction spec tests with 474ddfcc (&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2221&quot; title=&quot;Test that session is unpinned when executing a non-transaction operation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2221&quot;&gt;&lt;del&gt;CXX-2221&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2233&quot; title=&quot;Add unpinning transaction test for read operations&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2233&quot;&gt;&lt;del&gt;CXX-2233&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2235&quot; title=&quot;Unpin sessions after all abortTransaction attempts&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2235&quot;&gt;&lt;del&gt;CXX-2235&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2393&quot; title=&quot;Drivers should retry operations if connection handshake fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2393&quot;&gt;&lt;del&gt;CXX-2393&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2552&quot; title=&quot;Add test that reads are not retried in a transaction&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2552&quot;&gt;&lt;del&gt;CXX-2552&lt;/del&gt;&lt;/a&gt;, &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2690&quot; title=&quot;Deprecate sharded-replicaset topology type and clean up redundant runOnRequirements&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2690&quot;&gt;&lt;del&gt;CXX-2690&lt;/del&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix unified test runner outcome checks missing readPreference=primary and readConcern=local&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add transactions spec tests to unified test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix test client URI hostname specification in unified test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Implement targetedFailPoint in unified test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Implement session pin assertions in unified test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add sharded cluster tasks to EVG config&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Use scope guards to disable fail points in unified test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Remove obsolete version checks in examples (&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1547&quot; title=&quot;Run complex aggregation example once Travis uses mongo &amp;gt;= 3.6&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-1547&quot;&gt;&lt;del&gt;CXX-1547&lt;/del&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix server version comparisons&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Workaround possibly unexpected multi and upsert fields&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Fix match actions when comparing APM events in legacy test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add support for missing sessionOptions fields in legacy test runner&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-cxx-driver/commit/3fe25b824406daf7d01e4c0d78dc99695e9d987d&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-cxx-driver/commit/3fe25b824406daf7d01e4c0d78dc99695e9d987d&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="5316665" author="xgen-internal-githook" created="Fri, 31 Mar 2023 20:17:55 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Ezra Chung&apos;, &apos;email&apos;: &apos;88335979+eramongodb@users.noreply.github.com&apos;, &apos;username&apos;: &apos;eramongodb&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2393&quot; title=&quot;Drivers should retry operations if connection handshake fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2393&quot;&gt;&lt;del&gt;CXX-2393&lt;/del&gt;&lt;/a&gt; Sync retryable handshake error unified spec tests (#946)&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Move existing retryable-reads tests into legacy subdirectory&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Remove update spec test scripts&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2393&quot; title=&quot;Drivers should retry operations if connection handshake fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2393&quot;&gt;&lt;del&gt;CXX-2393&lt;/del&gt;&lt;/a&gt; sync retryable-reads unified spec tests with 08230607&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2393&quot; title=&quot;Drivers should retry operations if connection handshake fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2393&quot;&gt;&lt;del&gt;CXX-2393&lt;/del&gt;&lt;/a&gt; sync retryable-writes unified spec tests with 08230607&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2610&quot; title=&quot;Improve test coverage for retryable handshake errors&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2610&quot;&gt;&lt;del&gt;CXX-2610&lt;/del&gt;&lt;/a&gt; sync retryable-reads unified spec tests with 35b17b70&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/CXX-2610&quot; title=&quot;Improve test coverage for retryable handshake errors&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-2610&quot;&gt;&lt;del&gt;CXX-2610&lt;/del&gt;&lt;/a&gt; sync retryable-writes unified spec tests with 35b17b70&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Ensure APM events are printed properly on APM event comparison failure&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Ensure the configureFailPoint command is excluded from observed events&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add support for skipping individual test cases in unified test runner&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add unified test runner support for listCollectionNames&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add unified test runner support for listDatabaseNames&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Capture unsupported command monitoring events in test output on failure&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add client::list_databases overload accepting session and opts&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Add client::list_database_names overload accepting session and filter&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-cxx-driver/commit/46b86f47967f30773a0c15f30876ece2f2e831d4&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-cxx-driver/commit/46b86f47967f30773a0c15f30876ece2f2e831d4&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10620">
                    <name>Issue split</name>
                                                                <inwardlinks description="split from">
                                        <issuelink>
            <issuekey id="967617">DRIVERS-746</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2172056">CXX-2610</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_21553" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Quarter</customfieldname>
                        <customfieldvalues>
                                        <label>FY24Q1</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr1k1p:d1</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_21457" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Upstream Changes Summary</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-746&quot; title=&quot;Drivers should retry operations if connection handshake fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-746&quot;&gt;DRIVERS-746&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Retryable reads tests now have a legacy and unified directories&lt;/li&gt;
	&lt;li&gt;Sync unified handshakeError retryable reads and retryable writes tests to &lt;a href=&quot;https://github.com/mongodb/specifications/commit/082306075eb2d125c47503e94fabc42f00a16784&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;mongodb/specifications@0823060&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;Sync unified retryable-abort-handshake and retryable-commit-handshake transaction tests with &lt;a href=&quot;https://github.com/mongodb/specifications/commit/082306075eb2d125c47503e94fabc42f00a16784&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;mongodb/specifications@0823060&lt;/a&gt;. These have been written but are skipped pending &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2032&quot; title=&quot;Clarify server pinning behavior and pausable pool workflow&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2032&quot;&gt;DRIVERS-2032&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
</customfieldvalue>

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