<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:46:54 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-59300] Change AsyncDBClient to use OP_MSG for isMaster request rather than OP_QUERY</title>
                <link>https://jira.mongodb.org/browse/SERVER-59300</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Historically, clients have always issued the isMaster request on connection open as an OP_QUERY command. This was necessary for communication with older servers that do not support the OP_MSG protocol. However, as part of &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-58338&quot; title=&quot;Return an error if client attempts an OP_QUERY command other than isMaster/hello&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-58338&quot;&gt;&lt;del&gt;SERVER-58338&lt;/del&gt;&lt;/a&gt; we changed &lt;tt&gt;DBClientConnection&lt;/tt&gt; to use OP_MSG rather than OP_QUERY to issue its isMaster or hello request on connection open. This is acceptable because neither the deprecated mongo shell, nor a 5.1 mongod or mongos, needs to be able to communicate with old servers that don&apos;t support OP_MSG. Furthermore, this change aligns with the broader effort to remove support for op codes other than OP_MSG. OP_INSERT, OP_DELETE, OP_UPDATE, OP_KILL_CURSORS, and OP_GET_MORE or no longer supported in the master branch. OP_QUERY finds are also no longer supported. However, as of this writing the server retains minimal support for a handful of allowlisted OP_QUERY commands, including isMaster and hello.&lt;/p&gt;

&lt;p&gt;The change from &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-58338&quot; title=&quot;Return an error if client attempts an OP_QUERY command other than isMaster/hello&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-58338&quot;&gt;&lt;del&gt;SERVER-58338&lt;/del&gt;&lt;/a&gt; did not affect the &lt;tt&gt;AsyncDBClient&lt;/tt&gt;, which continues to have &lt;a href=&quot;https://github.com/mongodb/mongo/blob/70e9a9e4551034a0ee3e42b7fa66121cb494bbc8/src/mongo/client/async_client.cpp#L239-L242&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;special logic for issuing its isMaster command as an OP_QUERY command&lt;/a&gt;. In order to continue the effort to remove OP_QUERY from the code base, and in order to bring the &lt;tt&gt;AsyncDBClient&lt;/tt&gt; in line with the other client code in the server code base, we should change the &lt;tt&gt;AsyncDBClient&lt;/tt&gt; to issue its isMaster/hello as an OP_MSG command.&lt;/p&gt;

&lt;p&gt;Note that compared the internal client code in the server, the drivers have stricter backwards compatibility and usability requirements. Therefore, the drivers will continue, at least for now, to use OP_QUERY for the initial isMaster command.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1849245">SERVER-59300</key>
            <summary>Change AsyncDBClient to use OP_MSG for isMaster request rather than OP_QUERY</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="david.storch@mongodb.com">David Storch</assignee>
                                    <reporter username="david.storch@mongodb.com">David Storch</reporter>
                        <labels>
                    </labels>
                <created>Wed, 11 Aug 2021 18:18:29 +0000</created>
                <updated>Sun, 29 Oct 2023 21:49:37 +0000</updated>
                            <resolved>Wed, 13 Oct 2021 16:03:34 +0000</resolved>
                                                    <fixVersion>5.2.0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="4121855" author="xgen-internal-githook" created="Wed, 13 Oct 2021 15:56:31 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;David Storch&apos;, &apos;email&apos;: &apos;david.storch@mongodb.com&apos;, &apos;username&apos;: &apos;dstorch&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-59300&quot; title=&quot;Change AsyncDBClient to use OP_MSG for isMaster request rather than OP_QUERY&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-59300&quot;&gt;&lt;del&gt;SERVER-59300&lt;/del&gt;&lt;/a&gt; Make AsyncDBClient use OP_MSG rather than OP_QUERY for isMaster&lt;/p&gt;

&lt;p&gt;Removing any lingering uses of OP_QUERY will be helpful in&lt;br/&gt;
order to eventually remove the final traces of OP_QUERY&lt;br/&gt;
support from the code base. Changing the AsyncDBClient to&lt;br/&gt;
use the &quot;hello&quot; command rather than &quot;isMaster&quot; is left as a&lt;br/&gt;
future improvement.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/5462b81c4a678b63c340bfa51640da3fecad0358&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/5462b81c4a678b63c340bfa51640da3fecad0358&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3998183" author="david.storch" created="Thu, 12 Aug 2021 17:45:20 +0000"  >&lt;p&gt;My vote would be to schedule this one. It should be very straightforward, and will make it easier to get rid of OP_QUERY going forward.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2341542">SERVER-77154</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1811224">SERVER-58338</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>2.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.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>Thu, 7 Oct 2021 22:32:33 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 17 weeks 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-2155</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 ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>david.storch@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzxezr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr2o6f:</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_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="5267">QE 2021-10-18</customfieldvalue>

                        </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|hzx18n:</customfieldvalue>

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