<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:14:27 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-2192] Implement Driver Sessions API</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-2192</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;Conform to the Driver Session Spec. Start and end a client-side session, and gossip the clusterTime.&lt;/p&gt;

&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;&lt;b&gt;Done in 1.8&lt;/b&gt;: Bundle all the data needed to run a command into a mongoc_cmd_parts_t struct and pass that around instead of adding a &quot;session&quot; parameter everywhere&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Implement the second part of the spec&apos;s test plan: prove that a database or collection stores a pointer to the session it came from&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Write a live test that any command sent to a 3.6 mongos includes $clusterTime&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Implement mongoc_session_opts_clone().&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Ensure that executing an empty command &quot;{}&quot; is still an error. Check in mongoc_cmd_parts_assemble / mongoc_cmd_parts_assemble_simple that the command name is non-NULL, before adding &quot;$clusterTime&quot;. Update their signatures to take an error pointer and return bool. Save the command name on the mongoc_cmd_t.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Append $clusterTime to commands in mongoc-cursor.c.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Parse $clusterTime from all command replies&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Send and receive $clusterTime in topology scanner&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Complete clusterTime tests from Driver Sessions Spec&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Add a &quot;session&quot; field to mongoc_cmd_t and ensure all commands on a mongoc_session_t, mongoc_database_t, or mongoc_collection_t set it correctly.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: For most of the non-deprecated functions on a mongoc_client_t, add functions for mongoc_session_t. E.g., mongoc_session_drop_database, mongoc_session_read_write_command_with_opts, get read preference, read concern, write concern.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Generate session ids and pass them with all commands.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Cancelled&lt;/b&gt;: mongoc_session_get_database_names and mongoc_session_find_databases.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Get localLogicalSessionTimeoutMinutes from ismaster response.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Delete code that adds &quot;lsid&quot; to OP_QUERY commands in mongoc_cmd_assemble and _mongoc_write_opquery; all commands sent to servers that support sessions will use OP_MSG (may depend on &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2306&quot; title=&quot;OP_MSG support in mock server&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2306&quot;&gt;&lt;del&gt;CDRIVER-2306&lt;/del&gt;&lt;/a&gt;)&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Moved to &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2355&quot; title=&quot;Refactor mongoc_cmd_parts_assemble&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2355&quot;&gt;&lt;del&gt;CDRIVER-2355&lt;/del&gt;&lt;/a&gt;&lt;/b&gt;: Refactor mongoc_cmd_parts_assemble, $readPreference handling is particularly duplicative.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Respond to spec changes. The spec had said that we associate db / collection / gridfs objects with sessions, but now we&apos;re going to keep sessions separate, and pass a session as a parameter to each non-deprecated function that can use a session. Luckily, I think our &quot;with_opts&quot; functions will handle this without requiring a large number of new functions.&lt;/p&gt;

&lt;p&gt;The spec had made retryWrites a session option, now it&apos;s a client option.&lt;/p&gt;

&lt;p&gt;We had chosen not to implement session pooling, but pooling is practically a requirement now, because every command must be associated with some session (whether the user passes a session or not).&lt;/p&gt;

&lt;p&gt;Required changes:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Temporarily disable compilation of example-session.c&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Remove the functions that create a database, collection or gridfs struct that is associated with a session. We&apos;re not associating these structs with sessions anymore. Keep the session field in bulk operation and cursor structs, however.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Remove the session field from the db / collection / gridfs structs.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Remove read concern, write concern, and read preferences from session.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Remove documentation of the relationship among db / collection / gridfs and sessions.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Remove retryWrites from mongoc_session_opts_t&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Remove mongoc_session_read_command_with_opts and similar functions - we&apos;re not executing commands on a session anymore, we pass the session to the command function&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Rename mongoc_session_t to mongoc_client_session_t&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Replace term &quot;causally consistent reads&quot; with &quot;causal consistency&quot;.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Add mongoc_client_session_append, analogous to mongoc_write_concern_append: it will add an &quot;lsid&quot; to a bson_t &quot;opts&quot;&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;In &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2331&quot; title=&quot;New &amp;quot;with_opts&amp;quot; functions to accept sessionId&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2331&quot;&gt;&lt;del&gt;CDRIVER-2331&lt;/del&gt;&lt;/a&gt;&lt;/b&gt;: Test that all &quot;with_opts&quot; functions properly handle the &quot;lsid&quot; field.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;In &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2331&quot; title=&quot;New &amp;quot;with_opts&amp;quot; functions to accept sessionId&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2331&quot;&gt;&lt;del&gt;CDRIVER-2331&lt;/del&gt;&lt;/a&gt;&lt;/b&gt;: Add &quot;with_opts&quot; functions as necessary to support sessions everywhere: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2331&quot; title=&quot;New &amp;quot;with_opts&amp;quot; functions to accept sessionId&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2331&quot;&gt;&lt;del&gt;CDRIVER-2331&lt;/del&gt;&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Update example-session.c to not show retryable writes, only causally consistent reads, and to use new API. Re-enable compilation and re-enable the literalinclude in mongoc_session_t.rst&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Implement a server session pool, and move txn_num field from mongoc_client_session_t to a new internal struct mongoc_server_session_t. Use logicalSessionTimeoutMinutes to determine whether sessions are supported in the topology, and return an error from mongoc_client_start_session otherwise. _mongoc_topology_pop_server_session must trigger topology discovery if there are no known servers, so it can detect whether the topology supports sessions (logical_session_timeout_minutes is not -1).&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Call endSessions when destroying a client or client pool.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Update sessions API for recent changes: set the clusterTime on a mongoc_client_session_t (operationTime will be handled in &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2229&quot; title=&quot;Causal consistency support &quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2229&quot;&gt;&lt;del&gt;CDRIVER-2229&lt;/del&gt;&lt;/a&gt;)&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Implement &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/sessions/driver-sessions.rst#how-to-compute-the-clustertime-to-send-to-a-server&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;compute the $clusterTime to send to a server&lt;/a&gt; from the spec&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Include &quot;lsid&quot; with all commands, even if no explicit session is passed. Add a section to run_session_test() that executes the command with no &quot;sessionId&quot; and ensure all commands include the same lsid anyway. Make sure not to send lsid with &quot;endSessions&quot;.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Use random numbers, instead of consecutive ones, for sessionIds. This ensures that a session from the wrong client really is prohibited.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;Done&lt;/b&gt;: Update server session&apos;s last_used.&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="395239">CDRIVER-2192</key>
            <summary>Implement Driver Sessions API</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</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="jesse@mongodb.com">A. Jesse Jiryu Davis</assignee>
                                    <reporter username="jesse@mongodb.com">A. Jesse Jiryu Davis</reporter>
                        <labels>
                    </labels>
                <created>Sun, 18 Jun 2017 15:30:37 +0000</created>
                <updated>Sat, 28 Oct 2023 11:30:38 +0000</updated>
                            <resolved>Thu, 9 Nov 2017 17:24:50 +0000</resolved>
                                                    <fixVersion>1.9.0</fixVersion>
                                    <component>libmongoc</component>
                                        <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="1723449" author="xgen-internal-githook" created="Sun, 12 Nov 2017 04:04:59 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; more &quot;const&quot; in session API&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/ffdf560d9e7fc582e2b9e5b05b36564b7d91c41b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/ffdf560d9e7fc582e2b9e5b05b36564b7d91c41b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1721697" author="xgen-internal-githook" created="Thu, 9 Nov 2017 17:18:38 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; cursor_set_hint enables secondary read w/ OP_MSG&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/38e72de45fe1b3ec71be275bd507e29bb0d45a4e&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/38e72de45fe1b3ec71be275bd507e29bb0d45a4e&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1721694" author="xgen-internal-githook" created="Thu, 9 Nov 2017 17:18:33 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; avoid endSessions warnings in tests&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/4aec3980c1a0e1cb7cd86d974c0237b3f16943e1&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/4aec3980c1a0e1cb7cd86d974c0237b3f16943e1&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1721020" author="xgen-internal-githook" created="Wed, 8 Nov 2017 22:44:19 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; fix session last_use_time test on Win&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/e829bada678a444a4c121479dcceece8071c7b46&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/e829bada678a444a4c121479dcceece8071c7b46&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720868" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:45 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; no $clusterTime from OP_QUERY&lt;/p&gt;

&lt;p&gt;Dead code.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/f7f0a8a406f8be3b196669694e8147a1e4da7fba&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/f7f0a8a406f8be3b196669694e8147a1e4da7fba&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720867" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:43 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; track sessions&apos; last use time&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/ce7afa23c8acc5379446b1b87dc9ec0073a229c1&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/ce7afa23c8acc5379446b1b87dc9ec0073a229c1&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720866" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:42 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; use random sessionId&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/a64115012c0385f476440500b07403a870922a8e&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/a64115012c0385f476440500b07403a870922a8e&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720865" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:40 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; handle endSessions in APM&lt;/p&gt;

&lt;p&gt;Update tests and examples to deal with endSessions command events during mongoc_client_destroy.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/adbabe0ca5b03dd5832c5a16467102bd2e6c4640&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/adbabe0ca5b03dd5832c5a16467102bd2e6c4640&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720864" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:39 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; auth earlier in tests&lt;/p&gt;

&lt;p&gt;Now that we use lsid everywhere, the test framework must auth even to&lt;br/&gt;
call ismaster and determine if we&apos;re connected to a replset or not.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/5163877590520e2b75095d43c5d476e502155d13&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/5163877590520e2b75095d43c5d476e502155d13&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720863" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:37 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; fix bulk test for sessions&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/fc620ac58b7dd6cf93d199693a799dd625ec2cfa&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/fc620ac58b7dd6cf93d199693a799dd625ec2cfa&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720862" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:35 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; leak in sessions tests, part 2&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/2b32a08cbdb5d44eac7b410bc11e2f03c8329a19&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/2b32a08cbdb5d44eac7b410bc11e2f03c8329a19&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720861" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:34 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; implicit sessions with all commands&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/5b1081fb23fa0376d029eb5de79fe4b2cf5d7080&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/5b1081fb23fa0376d029eb5de79fe4b2cf5d7080&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720860" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:32 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; leak in session tests&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/ca522f437147b9703a595f2aa4994c67b5771956&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/ca522f437147b9703a595f2aa4994c67b5771956&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1720859" author="xgen-internal-githook" created="Wed, 8 Nov 2017 20:49:31 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; fix logging in endSessions&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/2019b3910bebcd44dafeb4749a2f2c8fac61e063&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/2019b3910bebcd44dafeb4749a2f2c8fac61e063&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1719697" author="xgen-internal-githook" created="Tue, 7 Nov 2017 20:04:09 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; send session&apos;s cluster time if newer&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/fc7bdc660c78dbcd42a56177fd2ef5a25cfb8903&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/fc7bdc660c78dbcd42a56177fd2ef5a25cfb8903&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1718291" author="xgen-internal-githook" created="Tue, 7 Nov 2017 02:31:24 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; skip cluster time tests when needed&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/bf11cd9633425b0de9226e0a897cb180b1d5ff18&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/bf11cd9633425b0de9226e0a897cb180b1d5ff18&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1718290" author="xgen-internal-githook" created="Tue, 7 Nov 2017 02:31:22 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; store clusterTime on session&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/ca66f8f1fc81b2a414987be1e455c01738676902&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/ca66f8f1fc81b2a414987be1e455c01738676902&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1718288" author="xgen-internal-githook" created="Tue, 7 Nov 2017 02:31:20 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; send $clusterTime in ismaster&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/90850d1b811aa2144a9b21e8e7007f5ad042d47b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/90850d1b811aa2144a9b21e8e7007f5ad042d47b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1717911" author="xgen-internal-githook" created="Mon, 6 Nov 2017 19:45:15 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; leak calling endSessions&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/7c82183034bf564be34518caef4be2ec5d68d27b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/7c82183034bf564be34518caef4be2ec5d68d27b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1717089" author="xgen-internal-githook" created="Sat, 4 Nov 2017 13:45:05 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; session tests don&apos;t require mongos&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/ed91ee0790940c9f80042066ee294595f1e85d51&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/ed91ee0790940c9f80042066ee294595f1e85d51&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1716884" author="xgen-internal-githook" created="Fri, 3 Nov 2017 19:45:04 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; call &quot;endSessions&quot;&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/5f6f3c4d29c329aaa5b51b612c9d6b745a60e185&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/5f6f3c4d29c329aaa5b51b612c9d6b745a60e185&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1716883" author="xgen-internal-githook" created="Fri, 3 Nov 2017 19:45:03 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; connect, then check session timeout&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/4e3fef6aa00516739f2e81d8d7ff3c8177ecdfc5&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/4e3fef6aa00516739f2e81d8d7ff3c8177ecdfc5&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1716772" author="jesse" created="Fri, 3 Nov 2017 18:11:42 +0000"  >&lt;p&gt;Right, implicit sessions aren&apos;t implemented yet. Only the things marked &quot;done&quot; are done =)&lt;/p&gt;

&lt;p&gt;I&apos;ve updated the description to add your suggestions: We&apos;ll implement mongoc_bulk_operation_set_client_session, and we&apos;ll add examples for findAndModify with sessions.&lt;/p&gt;</comment>
                            <comment id="1716710" author="jmikola@gmail.com" created="Fri, 3 Nov 2017 17:40:37 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jesse&quot; class=&quot;user-hover&quot; rel=&quot;jesse&quot;&gt;jesse&lt;/a&gt;: I realized that implicit sessions were not implemented after debugging some odd test failures for retryable writes in &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2228&quot; title=&quot;All writes retryable support&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2228&quot;&gt;&lt;del&gt;CDRIVER-2228&lt;/del&gt;&lt;/a&gt;. The following is still outstanding:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Include &quot;lsid&quot; with all commands, even if no explicit session is passed. Add a section to run_session_test() that executes the command with no &quot;sessionId&quot; and ensure all commands include the same lsid anyway. Make sure not to send lsid with &quot;endSessions&quot;.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;While working around this, I realized that &lt;tt&gt;mongoc_bulk_operation_t&lt;/tt&gt; has a &lt;tt&gt;session&lt;/tt&gt; field, but there is no setter. PHPC still relies on the &lt;tt&gt;mongoc_bulk_operation_t&lt;/tt&gt; and methods like &lt;tt&gt;mongoc_bulk_operation_set_client()&lt;/tt&gt;, so I think we&apos;ll definitely need a setter for the client session as well (to be added down in &lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/blob/1.8.1/src/mongoc/mongoc-bulk-operation.h#L115&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;this section&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Additionally, it looks like we may need some examples/documentation to demonstrate how to add &quot;sessionId&quot; to a &lt;tt&gt;find_and_modify_opts_t&lt;/tt&gt; via &lt;tt&gt;mongoc_find_and_modify_opts_append()&lt;/tt&gt;. I expect this will be similar to the process in &lt;tt&gt;test_find_and_modify_opts_write_concern()&lt;/tt&gt;.&lt;/p&gt;</comment>
                            <comment id="1716146" author="xgen-internal-githook" created="Fri, 3 Nov 2017 00:36:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;, &apos;email&apos;: &apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; error if sessions are not supported&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/fedb86275bab6ed0c2c6978359282c789c406206&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/fedb86275bab6ed0c2c6978359282c789c406206&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1711939" author="xgen-internal-githook" created="Sat, 28 Oct 2017 18:15:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; mongoc_client_session_append&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/6b263c44b2be48a3e7ea28ab53e54b31e5133b3a&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/6b263c44b2be48a3e7ea28ab53e54b31e5133b3a&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1711915" author="xgen-internal-githook" created="Sat, 28 Oct 2017 14:32:39 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; fix test_session_no_crypto&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/75f4576a89613b08e776ea9fd5baf2323da40443&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/75f4576a89613b08e776ea9fd5baf2323da40443&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1710298" author="xgen-internal-githook" created="Thu, 26 Oct 2017 17:39:52 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; server session pool&lt;/p&gt;

&lt;p&gt;Try 2: use circular doubly-linked list macros from utlist.h, rather than&lt;br/&gt;
the non-circular macros. Add some BSON_ASSERTs to silence scan-build&lt;br/&gt;
warnings, and correctly select which tests to run.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/c9d6c8fc708c522eefa102a806a444d65fd1b502&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/c9d6c8fc708c522eefa102a806a444d65fd1b502&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1709121" author="xgen-internal-githook" created="Wed, 25 Oct 2017 19:10:02 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; remove WIRE_VERSION_CLUSTER_TIME&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/af15a77df9256ef3d65ff8c973da7a6ace0d8e25&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/af15a77df9256ef3d65ff8c973da7a6ace0d8e25&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1709120" author="xgen-internal-githook" created="Wed, 25 Oct 2017 19:10:00 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; no lsid or $clusterTime with OP_QUERY&lt;/p&gt;

&lt;p&gt;Now that we&apos;ve implemented OP_MSG in the mock server we can test lsid&lt;br/&gt;
and $clusterTime in realistic scenarios where the driver sends them in&lt;br/&gt;
an OP_MSG. Code that had sent lsid and $clusterTime with OP_QUERY is&lt;br/&gt;
now dead.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/ee490a5a7cd38761c564f8ffb28c8fe756f227df&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/ee490a5a7cd38761c564f8ffb28c8fe756f227df&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1697227" author="xgen-internal-githook" created="Thu, 12 Oct 2017 14:54:42 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: Revert &quot;&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; server session pool&quot;&lt;/p&gt;

&lt;p&gt;5cb9050e716f8793db25b719493783a1d6bf6524&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/5049dc8af37078aaf2ed7afc08772ec61db66fa4&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/5049dc8af37078aaf2ed7afc08772ec61db66fa4&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1695713" author="xgen-internal-githook" created="Wed, 11 Oct 2017 12:26:36 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; server session pool&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/5cb9050e716f8793db25b719493783a1d6bf6524&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/5cb9050e716f8793db25b719493783a1d6bf6524&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1695712" author="xgen-internal-githook" created="Wed, 11 Oct 2017 12:26:35 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; rename session header guards&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/b8dc5830f6632a5e66f85a5de77dee29300677b5&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/b8dc5830f6632a5e66f85a5de77dee29300677b5&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1693198" author="xgen-internal-githook" created="Mon, 9 Oct 2017 16:20:03 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; &quot;causally consistent&quot; -&amp;gt;&quot;causal consistency&quot;&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/02889951229d5263766f2dde9baa3331f053395d&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/02889951229d5263766f2dde9baa3331f053395d&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1690096" author="xgen-internal-githook" created="Thu, 5 Oct 2017 12:51:02 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; don&apos;t send $clusterTime with OP_QUERY&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/569a1ecd505db6145471309313c7ebb28a139ce7&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/569a1ecd505db6145471309313c7ebb28a139ce7&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1688285" author="jmikola@gmail.com" created="Tue, 3 Oct 2017 19:54:27 +0000"  >&lt;p&gt;Observation while I was working on retryable writes: if mongoc_cmd_parts_assemble only adds &quot;lsid&quot; for OP_MSG, _mongoc_write_opquery likely doesn&apos;t need to &lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/blob/1ad4e3fbff9cc2d3f81a35629791f932ae71300e/src/mongoc/mongoc-write-command.c#L544&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;take a session parameter&lt;/a&gt; nor &lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/blob/1ad4e3fbff9cc2d3f81a35629791f932ae71300e/src/mongoc/mongoc-write-command.c#L627&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;assign it to parts.session&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="1687309" author="xgen-internal-githook" created="Tue, 3 Oct 2017 01:11:36 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; gossip replica set $clusterTime&lt;/p&gt;

&lt;p&gt;Spec change: both replica sets and mongos servers report $clusterTime.&lt;br/&gt;
The driver gossips cluster time for all servers that report it, checking&lt;br/&gt;
wire version but not server type.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/9a4832981974a8ee52a8131388ce4d787cb6f32b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/9a4832981974a8ee52a8131388ce4d787cb6f32b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1686895" author="xgen-internal-githook" created="Mon, 2 Oct 2017 18:55:02 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;jesse@mongodb.com&apos;, &apos;name&apos;: &apos;A. Jesse Jiryu Davis&apos;, &apos;username&apos;: &apos;ajdavis&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; parse session timeout from ismaster&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/555379dc8f736e03f29ebb50ff51a7417ad4a2a4&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/555379dc8f736e03f29ebb50ff51a7417ad4a2a4&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671479" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:29 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; rename mongoc_session_t to mongoc_client_session_t&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/cf3ece6b49166d74a5caecabca91dd906868da68&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/cf3ece6b49166d74a5caecabca91dd906868da68&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671478" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:28 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; code improvements, fix leaks&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/e1c3b072b984ac6c9934d57e45edbe52a137bace&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/e1c3b072b984ac6c9934d57e45edbe52a137bace&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671477" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:28 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; leak in _mongoc_stream_run_ismaster&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/c6b610baecd0be48a635899e8922b0e5a6b6df7f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/c6b610baecd0be48a635899e8922b0e5a6b6df7f&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671476" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:27 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; remove APIs from prior session spec&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/971bcaa0dcfebaca847b247686b3fe7b7d0773e9&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/971bcaa0dcfebaca847b247686b3fe7b7d0773e9&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671474" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:26 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; $clusterTime fixes&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/3e4454e947c05040c582d8b56522079cc00f0413&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/3e4454e947c05040c582d8b56522079cc00f0413&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671473" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:25 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; generate and send session ids&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/270666bc736a95af3491f352acdf0b9e682e26d7&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/270666bc736a95af3491f352acdf0b9e682e26d7&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671472" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:25 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; new session functions&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/4e6ca92e9517186a737c1e7c99c6055eea9bd01c&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/4e6ca92e9517186a737c1e7c99c6055eea9bd01c&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671471" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:24 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; refactor cursor option handling&lt;/p&gt;

&lt;p&gt;mongoc_collection_aggregate, in particular, was prone to merging&lt;br/&gt;
options into the command body twice. And when talking with mongos, it&lt;br/&gt;
was very complex to handle $query, $readPreference, and $clusterTime&lt;br/&gt;
properly. The logic that merges options into a command to produce a&lt;br/&gt;
command cursor is now in one place, and the functions that do so for&lt;br/&gt;
mongos and mongod are now separated.&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/21c13d0d678d468f3cb565d150a15be841ebb90e&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/21c13d0d678d468f3cb565d150a15be841ebb90e&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671470" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:24 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; mock mongos returns $clusterTime&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/cf1e1d1fe3b761ec30ed8738a562cda3902e34dc&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/cf1e1d1fe3b761ec30ed8738a562cda3902e34dc&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671469" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; test $clusterTime comparison&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/b0ad845e456e2ce294d3142bdf764f7442dd7585&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/b0ad845e456e2ce294d3142bdf764f7442dd7585&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671468" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; parse $clusterTime from server reply&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/f5f16b0f9ed9fe536808b41016711c4581c70f55&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/f5f16b0f9ed9fe536808b41016711c4581c70f55&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671467" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:22 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; send $clusterTime in cursor commands&lt;/p&gt;

&lt;p&gt;Send $clusterTime to MongoDB 3.6 mongos from mongoc_collection_aggregate&lt;br/&gt;
and old mongoc_client_command.&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/ed6ec91eace54f5a955048709c8f024f289a7d2d&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/ed6ec91eace54f5a955048709c8f024f289a7d2d&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671466" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:22 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; detect empty command body&lt;/p&gt;

&lt;p&gt;Now that we add &quot;$clusterTime&quot; to commands sent to MongoDB 3.6+ mongos&lt;br/&gt;
servers, we must still ensure that executing an empty command &quot;{}&quot; is an&lt;br/&gt;
error. Check in mongoc_cmd_parts_assemble that the command is not empty&lt;br/&gt;
before adding &quot;$clusterTime&quot;.&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/4e76b4ac877fb98693cc8bad0b200371678ed971&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/4e76b4ac877fb98693cc8bad0b200371678ed971&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671465" author="ramon.fernandez" created="Wed, 13 Sep 2017 02:14:21 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; add mongoc_session_t&lt;br/&gt;
Branch:master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/659841f98c4fc80a2eb54c87748575a3609d0d30&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/659841f98c4fc80a2eb54c87748575a3609d0d30&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671414" author="ramon.fernandez" created="Wed, 13 Sep 2017 00:14:20 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; const correctness in session API&lt;br/&gt;
Branch:session-squashing&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/2e2e7b78f1373bb733bd4ad6c3d9b22777ad5dd5&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/2e2e7b78f1373bb733bd4ad6c3d9b22777ad5dd5&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671413" author="ramon.fernandez" created="Wed, 13 Sep 2017 00:14:19 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; rename mongoc_session_t to mongoc_client_session_t&lt;br/&gt;
Branch:session-squashing&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/fea9c9edec3a1867dd7f31e8d7ca2fe117a59073&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/fea9c9edec3a1867dd7f31e8d7ca2fe117a59073&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1671412" author="ramon.fernandez" created="Wed, 13 Sep 2017 00:14:19 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; code improvements, fix leaks&lt;br/&gt;
Branch:session-squashing&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/fca599133794ee9b97b9186f1d52b232607fe5ac&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/fca599133794ee9b97b9186f1d52b232607fe5ac&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1670932" author="ramon.fernandez" created="Tue, 12 Sep 2017 18:33:42 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; send $clusterTime in cursor commands&lt;/p&gt;

&lt;p&gt;Send $clusterTime to MongoDB 3.6 mongos from mongoc_collection_aggregate&lt;br/&gt;
and old mongoc_client_command.&lt;br/&gt;
Branch:session&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/0b978a0a030c7208da2cab8094f860eb95580ffb&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/0b978a0a030c7208da2cab8094f860eb95580ffb&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1670927" author="ramon.fernandez" created="Tue, 12 Sep 2017 18:33:34 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; parse $clusterTime from server reply&lt;br/&gt;
Branch:session&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/2723b90c17f0fd93fb3937de878bf03477847dc0&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/2723b90c17f0fd93fb3937de878bf03477847dc0&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1670926" author="ramon.fernandez" created="Tue, 12 Sep 2017 18:33:33 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; send $clusterTime in cursor commands&lt;/p&gt;

&lt;p&gt;Send $clusterTime to MongoDB 3.6 mongos from mongoc_collection_aggregate&lt;br/&gt;
and old mongoc_client_command.&lt;br/&gt;
Branch:session&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/6530bc3e30c6c98700a24c44d95175ab7d828825&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/6530bc3e30c6c98700a24c44d95175ab7d828825&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1670925" author="ramon.fernandez" created="Tue, 12 Sep 2017 18:33:32 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: u&apos;ajdavis&apos;, &apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, &apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message:&lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; detect empty command body&lt;/p&gt;

&lt;p&gt;Now that we add &quot;$clusterTime&quot; to commands sent to MongoDB 3.6+ mongos&lt;br/&gt;
servers, we must still ensure that executing an empty command &quot;{}&quot; is an&lt;br/&gt;
error. Check in mongoc_cmd_parts_assemble that the command is not empty&lt;br/&gt;
before adding &quot;$clusterTime&quot;.&lt;br/&gt;
Branch:session&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/807541242576021927badc1089707ec401be8885&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/807541242576021927badc1089707ec401be8885&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1622505" author="xgen-internal-githook" created="Fri, 14 Jul 2017 19:39:21 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; assert in Cyrus auth&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/04127a0dab4683fcd27872dfcde0314bd76f8ea5&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/04127a0dab4683fcd27872dfcde0314bd76f8ea5&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1618656" author="xgen-internal-githook" created="Tue, 11 Jul 2017 13:08:08 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-2192&quot; title=&quot;Implement Driver Sessions API&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-2192&quot;&gt;&lt;del&gt;CDRIVER-2192&lt;/del&gt;&lt;/a&gt; internal struct mongoc_cmd_t&lt;/p&gt;

&lt;p&gt;Prepare to implement sessions and OP_MSG.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/2f85890370b2c1e77450c85573465781671eda54&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/2f85890370b2c1e77450c85573465781671eda54&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="449140">CDRIVER-2331</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="411288">CDRIVER-2228</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="411305">CDRIVER-2229</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="405741">DRIVERS-395</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="407384">PHPC-980</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10520">
                    <name>Problem/Incident</name>
                                            <outwardlinks description="causes">
                                        <issuelink>
            <issuekey id="518688">CDRIVER-2576</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="478775">CDRIVER-2449</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="454621">CDRIVER-2341</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="456790">CDRIVER-2355</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>CDRIVER-2085</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|ht1eun:</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>