<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:20:22 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>[CDRIVER-4244] Use OP_MSG for exhaust cursors on 4.2+ servers</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-4244</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;&lt;b&gt;Background and motivation&lt;/b&gt;&lt;br/&gt;
5.1+ servers do not support exhaust cursors over OP_QUERY. &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-4130&quot; title=&quot;Allow exhaust cursor to fallback to normal cursor if server does not support OP_QUERY&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-4130&quot;&gt;&lt;del&gt;CDRIVER-4130&lt;/del&gt;&lt;/a&gt; changed the exhaust cursor implementation to fallback to a non-exhaust cursor on 5.1 servers.&lt;/p&gt;

&lt;p&gt;This is permitted by the &lt;a href=&quot;https://github.com/mongodb/specifications/blob/b62b0568920fa09394f2f6ca81dc5b61ec99ec02/source/find_getmore_killcursors_commands.rst#exhaust&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Find, getMore and killCursors commands.&lt;/a&gt; specification:&lt;/p&gt;

&lt;div class=&apos;table-wrap&apos;&gt;
&lt;table class=&apos;confluenceTable&apos;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;Server version&lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;Driver behavior&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;4.0 and earlier	&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Drivers MUST use legacy OP_QUERY.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;4.2 to 5.0	&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Drivers SHOULD use OP_MSG but MAY use legacy OP_QUERY.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;5.1 and later	&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Drivers MUST only use OP_MSG. Alternatively, drivers MAY fallback to a non-exhaust cursor when an exhaust cursor is requested.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;


&lt;p&gt;See PyMongo for a reference implementation of Exhaust Cursors with OP_MSG: &lt;a href=&quot;https://jira.mongodb.org/browse/PYTHON-1636&quot; title=&quot;Support Exhaust Cursor in OP_MSG&quot; class=&quot;issue-link&quot; data-issue-key=&quot;PYTHON-1636&quot;&gt;&lt;del&gt;PYTHON-1636&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Scope&lt;/b&gt;&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Satisfy the &quot;SHOULD&quot; statement for server 4.2 to 5.0. Implement exhaust cursors with OP_MSG.&lt;/li&gt;
	&lt;li&gt;Do not fallback to a non-exhaust cursors on 5.1.&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="1952784">CDRIVER-4244</key>
            <summary>Use OP_MSG for exhaust cursors on 4.2+ servers</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</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="adrian.dole@mongodb.com">Adrian Dole</assignee>
                                    <reporter username="kevin.albertson@mongodb.com">Kevin Albertson</reporter>
                        <labels>
                    </labels>
                <created>Fri, 17 Dec 2021 02:46:31 +0000</created>
                <updated>Sat, 28 Oct 2023 11:28:15 +0000</updated>
                            <resolved>Mon, 25 Sep 2023 19:09:35 +0000</resolved>
                                                    <fixVersion>1.25.0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="5722347" author="xgen-internal-githook" created="Thu, 21 Sep 2023 19:03:19 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Adrian Dole&apos;, &apos;email&apos;: &apos;adrian@dole.tech&apos;, &apos;username&apos;: &apos;adriandole&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-4244&quot; title=&quot;Use OP_MSG for exhaust cursors on 4.2+ servers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-4244&quot;&gt;&lt;del&gt;CDRIVER-4244&lt;/del&gt;&lt;/a&gt; use OP_MSG for exhaust cursors (#1399)&lt;/p&gt;

&lt;p&gt;Use OP_MSG exhaust for mongod &amp;gt;= 4.2. Enable exhaust cursors for mongos &amp;gt;= 7.1.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/1c8da0ee199661a4276c87fb9ec2fbb375a2a4ad&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/1c8da0ee199661a4276c87fb9ec2fbb375a2a4ad&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="571466">DRIVERS-535</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1953492">SERVER-62147</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1852165">CDRIVER-4130</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </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>FY24Q3</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr6i7r:f0i69</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>