<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:49:57 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>[SERVER-60495] Retry FailedToSatisfyReadPreference in DDL coordinators</title>
                <link>https://jira.mongodb.org/browse/SERVER-60495</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Some tests running on suites killing primary nodes resulted in &lt;tt&gt;DDL&lt;/tt&gt; failures because of a&#160;FailedToSatisfyReadPreference exception. Such error must be included in the ones &lt;a href=&quot;https://github.com/mongodb/mongo/blob/b8ff4449168e893d84f03b63202224a5151fe780/src/mongo/db/s/sharding_ddl_coordinator.cpp#L217-L223&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;retriable&lt;/a&gt; in order not to release DDL coordinators half-way.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1891770">SERVER-60495</key>
            <summary>Retry FailedToSatisfyReadPreference in DDL coordinators</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="pierlauro.sciarelli@mongodb.com">Pierlauro Sciarelli</assignee>
                                    <reporter username="pierlauro.sciarelli@mongodb.com">Pierlauro Sciarelli</reporter>
                        <labels>
                    </labels>
                <created>Wed, 6 Oct 2021 16:53:02 +0000</created>
                <updated>Sun, 29 Oct 2023 21:47:45 +0000</updated>
                            <resolved>Mon, 11 Oct 2021 08:18:26 +0000</resolved>
                                    <version>5.0.3</version>
                    <version>5.1.0-rc0</version>
                                    <fixVersion>5.2.0</fixVersion>
                    <fixVersion>5.0.4</fixVersion>
                    <fixVersion>5.1.0-rc1</fixVersion>
                                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="4119658" author="xgen-internal-githook" created="Tue, 12 Oct 2021 18:17:55 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Pierlauro Sciarelli&apos;, &apos;email&apos;: &apos;pierlauro.sciarelli@mongodb.com&apos;, &apos;username&apos;: &apos;pierlauro&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-60495&quot; title=&quot;Retry FailedToSatisfyReadPreference in DDL coordinators&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-60495&quot;&gt;&lt;del&gt;SERVER-60495&lt;/del&gt;&lt;/a&gt; Retry FailedToSatisfyReadPreference in DDL coordinators&lt;br/&gt;
Branch: v5.0&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/1a0f9aec5fbec1d7726a850a89f0f3ba0aee01f3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/1a0f9aec5fbec1d7726a850a89f0f3ba0aee01f3&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4116099" author="xgen-internal-githook" created="Mon, 11 Oct 2021 15:56:12 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Pierlauro Sciarelli&apos;, &apos;email&apos;: &apos;pierlauro.sciarelli@mongodb.com&apos;, &apos;username&apos;: &apos;pierlauro&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-60495&quot; title=&quot;Retry FailedToSatisfyReadPreference in DDL coordinators&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-60495&quot;&gt;&lt;del&gt;SERVER-60495&lt;/del&gt;&lt;/a&gt; Retry FailedToSatisfyReadPreference in DDL coordinators&lt;br/&gt;
Branch: v5.1&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/460172298bbe0e1301e80e0ca1138d9cc14e4b44&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/460172298bbe0e1301e80e0ca1138d9cc14e4b44&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4112152" author="xgen-internal-githook" created="Fri, 8 Oct 2021 06:51:01 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Pierlauro Sciarelli&apos;, &apos;email&apos;: &apos;pierlauro.sciarelli@mongodb.com&apos;, &apos;username&apos;: &apos;pierlauro&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-60495&quot; title=&quot;Retry FailedToSatisfyReadPreference in DDL coordinators&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-60495&quot;&gt;&lt;del&gt;SERVER-60495&lt;/del&gt;&lt;/a&gt; Retry FailedToSatisfyReadPreference in DDL coordinators&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/e988a942048d98cbdacbffec86654b614827ee02&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/e988a942048d98cbdacbffec86654b614827ee02&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4106236" author="max.hirschhorn@10gen.com" created="Wed, 6 Oct 2021 17:17:39 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=pierlauro.sciarelli&quot; class=&quot;user-hover&quot; rel=&quot;pierlauro.sciarelli&quot;&gt;pierlauro.sciarelli&lt;/a&gt;, after discussing &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-59884&quot; title=&quot;auto_retry_transaction.js does not retry during commit&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-59884&quot;&gt;SERVER-59884&lt;/a&gt; with Randolph, I think it is currently a bug that FailedToSatisfyReadPreference isn&apos;t considered a retryable error by drivers for the commitTransaction command. (The UnknownTransactionCommitResult error label is set by drivers - for example &lt;a href=&quot;https://github.com/mongodb/mongo-python-driver/blob/3.12.0/pymongo/client_session.py#L723-L730&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;in pymongo&lt;/a&gt;.)&lt;/p&gt;

&lt;p&gt;I&apos;m wondering if it is also a server bug that FailedToSatisfyReadPreference isn&apos;t considered a retryable error by drivers for retryable writes. I suspect that it is a bug because there&apos;s a fair chance the retry would succeed. Until DRIVERS-555 is completed, drivers will still unfortunately only retry once so if the primary of the replica set shard is unavailable for 30 seconds (twice &lt;tt&gt;kDefaultFindHostTimeout&lt;/tt&gt;), then the retryable write will still fail and lead to an error/exception in the application.&lt;/p&gt;

&lt;p&gt;It would be worth discussing/confirming with folks from the Replication and Drivers team but I feel like FailedToSatisfyReadPreference should have the same categories applied to it &lt;a href=&quot;https://github.com/mongodb/mongo/blob/35d5a6fc01fbe994873024c4f44d0bc4da9d6a1e/src/mongo/base/error_codes.yml#L308&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;that ExceededTimeLimit currently has&lt;/a&gt;. (&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-35031&quot; title=&quot;ExceededTimeLimit (50) is reported in situations unrelated to maxTimeMS&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-35031&quot;&gt;&lt;del&gt;SERVER-35031&lt;/del&gt;&lt;/a&gt; has some context on the difference between MaxTimeMSExpired and ExceededTimeLimit.)&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                                        </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1871847">SERVER-59884</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1813665">SERVER-58407</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_12450" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Backport Requested</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="22495"><![CDATA[v5.1]]></customfieldvalue>
    <customfieldvalue key="21777"><![CDATA[v5.0]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                <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_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 6 Oct 2021 17:17:39 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 17 weeks, 1 day ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></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_17050" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Downstream Team Attention</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="16941"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            2 years, 17 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>144.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10032" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Operating System</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10026"><![CDATA[ALL]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>max.hirschhorn@mongodb.com</customfieldvalue>
            <customfieldvalue>pierlauro.sciarelli@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i04lhj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hzobz3:</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_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i047mv:</customfieldvalue>

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