<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 09:04:07 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>[JAVA-5256] Switching replicas IP with a replica from a different replicaset can result in java driver obtaining HMAC keyId from the different replicaset</title>
                <link>https://jira.mongodb.org/browse/JAVA-5256</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>&lt;h4&gt;&lt;a name=&quot;Summary&quot;&gt;&lt;/a&gt;Summary&lt;/h4&gt;

&lt;p&gt;When a replica IP changes to a different IP address and its previous IP address is assigned to a replica from another replicaset (e.g. due to a kubernetes pod reboot) and the DNS cache does not&#160; refresh yet, the driver can connect to the replica of another replicaset and get its keyId. As a result, the keyId will be put in the driver&apos;s session and can be used, leading to the following error:&#160;&lt;/p&gt;

&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;No keys found for HMAC that is valid for time[...]&#160;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;

&lt;p&gt;MongoDB 6.0.8 replicaset topology: PSSSA and mongodb-driver-sync 4.8.2 but we have also seen this on other versions of the driver&lt;/p&gt;

&lt;p&gt;Replicas are configured with hostnames.&#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;AdditionalBackground&quot;&gt;&lt;/a&gt;Additional Background&lt;/h4&gt;

&lt;p&gt;The following description shows one of the observed cases. For obvious reasons, I replaced the real addresses and keys with other literals.&lt;/p&gt;

&lt;p&gt;Below you can find how to reproduce it.&lt;/p&gt;

&lt;p&gt;The client was connected to a PSSSA replica set, let&apos;s call it a replicaset-a&lt;/p&gt;

&lt;p&gt;One of the members of the replica set (let&apos;s call it&#160;&lt;tt&gt;replicaset-a-member-1&lt;/tt&gt;) works on some physical machine and there are members of other replicasets on this machine as well. Among them there is a member from the&#160;&lt;tt&gt;repliaset-b&lt;/tt&gt;, let&apos;s call it&#160;&lt;tt&gt;replicaset-b-member-1&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;The physical server has been rebooted.&lt;/p&gt;

&lt;p&gt;In the logs on the client side, we see information about the member being disconnected:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;The server is in quiesce mode and will shut down&apos; on server replicaset-a-member-1&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;After a short time, the pods began to start, the first one to get up was&#160;&lt;tt&gt;replicaset-b-member-1&lt;/tt&gt;, and it was assigned the IP address that belonged to&#160;&lt;tt&gt;replicaset-a-member-1&lt;/tt&gt;&#160;a moment ago.&lt;/p&gt;

&lt;p&gt;In the client&apos;s logs we see 2 entries.&lt;/p&gt;

&lt;p&gt;The first one says that the driver has connected again to the&#160;&lt;tt&gt;replicaset-a-member-1&lt;/tt&gt;, but in the response we can see that they data came from&#160;&lt;tt&gt;replicaset-b&lt;/tt&gt;:&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Log-entry-1:&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;Monitor thread successfully connected to server with description ServerDescription{address=replicaset-a-member-1, type=REPLICA_SET_SECONDARY, state=CONNECTED, ok=true, minWireVersion=0, maxWireVersion=17, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=622150, setName=&apos;replicaset-b&apos;, canonicalAddress=replicaset-b-address, hosts=&lt;span class=&quot;error&quot;&gt;&amp;#91;replicaset-b-member-1, replicaset-b-member-2, replicaset-b-member-3, replicaset-b-member-4&amp;#93;&lt;/span&gt;, passives=[], arbiters=&lt;span class=&quot;error&quot;&gt;&amp;#91;arbiter&amp;#93;&lt;/span&gt;, primary=&apos;replicaset-b-member-2&apos;,&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;You can see above that on the one hand the log says that the client has connected to a member of the&#160;&lt;tt&gt;replicaset-a&lt;/tt&gt;, but the topology itself comes from&#160;&lt;tt&gt;replicaset-b&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;A second entry immediately follows:&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Log-entry-2:&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;Expecting replica set member from set &apos;replicaset-a&apos;, but found one from set &apos;replicaset-b&apos;. Removing replicaset-a-member-1 from client view of cluster&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;So it looks like the driver figures out that it has connected to the wrong replica set and removes the member from the list of available ones.&lt;/p&gt;

&lt;p&gt;These two messages repeat for some time (until the real&#160;&lt;tt&gt;replicaset-a-member-1&lt;/tt&gt;&#160;starts), and then the following entry appears:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;Adding discovered server replicaset-a-member-1 to client view of cluster&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;So, the&#160;&lt;tt&gt;replicaset-a&lt;/tt&gt;&#160;node starts up, gets a different IP address, the driver connects to it, and everything looks correct.&lt;/p&gt;

&lt;p&gt;Unfortunately, from that point on, every query to that node ends up with an HMAC error, which says that the client tried to get to&#160;&lt;tt&gt;replicaset-a&lt;/tt&gt;&#160;using the keyId from&#160;&lt;tt&gt;replicaset-b&lt;/tt&gt;:&lt;/p&gt;

&lt;p&gt;{{Command failed with error 211 (KeyNotFound): &apos;No keys found for HMAC that is valid for time: &lt;/p&gt;
{ ts: Timestamp(XXX, 6130) }
&lt;p&gt; with id: replicaset-b-keyId&apos; on server replicaset-a-member-1. The full response is {&quot;ok&quot;: 0.0, &quot;errmsg&quot;: &quot;No keys found for HMAC that is valid for time:&lt;/p&gt;

{ ts: Timestamp(XXX, 6130) }

&lt;p&gt;with id: replicaset-b-keyId&quot;, &quot;code&quot;: 211, &quot;codeName&quot;: &quot;KeyNotFound&quot;, &quot;$clusterTime&quot;: {&quot;clusterTime&quot;: {&quot;$timestamp&quot;: {&quot;t&quot;: YYY, &quot;i&quot;: 2}}, &quot;signature&quot;: {&quot;hash&quot;: {&quot;$binary&quot;: {&quot;base64&quot;: &quot;XYZ&quot;, &quot;subType&quot;: &quot;00&quot;}}, &quot;keyId&quot;: replicaset-a-keyId}}, &quot;operationTime&quot;: {&quot;$timestamp&quot;:&lt;/p&gt;

{&quot;t&quot;: ZZZ, &quot;i&quot;: 2}

&lt;p&gt;}}}}&lt;/p&gt;

&lt;p&gt;Apparently, during the connection attempt loop on the old IP address, the driver somehow manages to retrieve the keyId from&#160;&lt;tt&gt;replicaset-b&lt;/tt&gt;&#160;and saves it in the session.&lt;/p&gt;

&lt;p&gt;My suspicion is that health check (which I guess is used to get keyId as well) is executed by a separate thread that is not synchronized in any way with the thread that is responsible for log-entry-1 and log-entry-2, and that it manages to execute right between those operations. That is:&lt;/p&gt;

&lt;ol&gt;
	&lt;li&gt;The driver connects to&#160;&lt;tt&gt;replicaset-b-member-1&lt;/tt&gt;, log-entry-1 appears&lt;/li&gt;
	&lt;li&gt;Another thread (running periodically) also connects to&#160;&lt;tt&gt;replicaset-b-member-1&lt;/tt&gt; and retrieves the wrong keyId without checking that it comes from the wrong replicaset&lt;/li&gt;
	&lt;li&gt;The driver detects that it is a connection to another replicaset, log-entry-2 appears, but does not clear the previously loaded key-id&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;When the correct node comes back, the driver still has the keyId from another replicaset in the session and tries to use it, which ends in an error. Interestingly, sometimes this lasts for a short time (1 error), sometimes for minutes or hours, and in one case we&apos;ve been observing this for many days, it stopped after a client application restart. I can&apos;t explain this yet.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;HowtoReproduce&quot;&gt;&lt;/a&gt;How to Reproduce&lt;/h4&gt;

&lt;ol&gt;
	&lt;li&gt;set the parameter&#160;&lt;tt&gt;heartbeatFrequencyMS=10&lt;/tt&gt;&#160;- this increases the probability that the thread retrieving the keyId will hit the right spot between connecting to the wrong member and removing it from the cluster view,&lt;/li&gt;
	&lt;li&gt;in the&#160;&lt;tt&gt;/etc/hosts&lt;/tt&gt;&#160;file, enter hostname of the&#160;&lt;tt&gt;replicaset-a-member-1&lt;/tt&gt;&#160;name and redirect it to the IP address of&#160;&lt;tt&gt;replicaset-b-member-1&lt;/tt&gt;&lt;/li&gt;
	&lt;li&gt;set a breakpoint here:&#160;&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/blob/master/driver-core/src/main/com/mongodb/internal/connection/ClusterClock.java#L54&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/blob/master/driver-core/src/main/com/mongodb/internal/connection/ClusterClock.java#L54&lt;/a&gt;&#160;I use a conditional breakpoint so that the code falls into it only when the keyId is different than the one from the&#160;&lt;tt&gt;replicaset-a&lt;/tt&gt;&lt;/li&gt;
	&lt;li&gt;start the application and wait&lt;/li&gt;
	&lt;li&gt;Sometimes it happens just after 1-3 minutes and sometimes I have to repeat the whole operation once or twice, sometimes removing the hosts entry also &quot;helps&quot;, but as a rule it is pretty easy to reproduce.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Out of 5 attempts, it always succeeds once, but I would appreciate it if someone else tries it.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="2514891">JAVA-5256</key>
            <summary>Switching replicas IP with a replica from a different replicaset can result in java driver obtaining HMAC keyId from the different replicaset</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="jeff.yemin@mongodb.com">Jeffrey Yemin</assignee>
                                    <reporter username="mknasiecki@gmail.com">Micha&#322; Knasiecki</reporter>
                        <labels>
                    </labels>
                <created>Sat, 2 Dec 2023 16:15:53 +0000</created>
                <updated>Wed, 10 Jan 2024 15:38:03 +0000</updated>
                            <resolved>Fri, 5 Jan 2024 16:45:46 +0000</resolved>
                                                    <fixVersion>4.11.2</fixVersion>
                                    <component>Cluster Management</component>
                                        <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="5989325" author="xgen-internal-githook" created="Fri, 5 Jan 2024 16:44:53 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Jeff Yemin&apos;, &apos;email&apos;: &apos;jeff.yemin@mongodb.com&apos;, &apos;username&apos;: &apos;jyemin&apos;}
&lt;p&gt;Message: Don&apos;t gossip cluster time from monitoring connections (#1276)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-5256&quot; title=&quot;Switching replicas IP with a replica from a different replicaset can result in java driver obtaining HMAC keyId from the different replicaset&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-5256&quot;&gt;&lt;del&gt;JAVA-5256&lt;/del&gt;&lt;/a&gt;&lt;br/&gt;
Branch: 4.11.x&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/9a3c9ddc3b56eb80cb4e0ed9f3617c7c31fdb8d3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/9a3c9ddc3b56eb80cb4e0ed9f3617c7c31fdb8d3&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="5989030" author="xgen-internal-githook" created="Fri, 5 Jan 2024 15:28:59 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Jeff Yemin&apos;, &apos;email&apos;: &apos;jeff.yemin@mongodb.com&apos;, &apos;username&apos;: &apos;jyemin&apos;}
&lt;p&gt;Message: Don&apos;t gossip cluster time from monitoring connections (#1276)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-5256&quot; title=&quot;Switching replicas IP with a replica from a different replicaset can result in java driver obtaining HMAC keyId from the different replicaset&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-5256&quot;&gt;&lt;del&gt;JAVA-5256&lt;/del&gt;&lt;/a&gt;&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/1955b75fbca2029014d4abfe55303e3f4639c061&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/1955b75fbca2029014d4abfe55303e3f4639c061&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="5962852" author="jeff.yemin" created="Wed, 20 Dec 2023 14:14:30 +0000"  >&lt;blockquote&gt;&lt;p&gt;However, the situation you described is actually possible, and from what I understand the fix will probably require a change on the server side..&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Not sure what the server can do in if a client is actually connecting accidentally to two different deployments.  Erroring is maybe the the best outcome in that situation.&lt;/p&gt;</comment>
                            <comment id="5962159" author="JIRAUSER1276063" created="Wed, 20 Dec 2023 08:11:23 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jeff.yemin%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jeff.yemin@mongodb.com&quot;&gt;jeff.yemin@mongodb.com&lt;/a&gt; After thinking about it, I came to the conclusion that the problem you described with mongo-s is unlikely to occur on my environment, because we do not share physical servers between mongo-s instances belonging to different clusters (as I said before - we have fewer sharded clusters so we can spread them easily among all the servers). Since pods of mongo-s of different clusters are never working on the same host, there&apos;s no chance for exchange of IP addresses between them. However, the situation you described is actually possible, and from what I understand the fix will probably require a change on the server side...&lt;/p&gt;</comment>
                            <comment id="5960748" author="JIRAUSER1276063" created="Tue, 19 Dec 2023 18:03:16 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jeff.yemin%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jeff.yemin@mongodb.com&quot;&gt;jeff.yemin@mongodb.com&lt;/a&gt; &lt;br/&gt;
I&apos;ve never had this issue on a sharded cluster, but 99% of our clusters are replicasets, so it could be because of this.&lt;/p&gt;</comment>
                            <comment id="5960615" author="jeff.yemin" created="Tue, 19 Dec 2023 17:17:09 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=mknasiecki%40gmail.com&quot; class=&quot;user-hover&quot; rel=&quot;mknasiecki@gmail.com&quot;&gt;mknasiecki@gmail.com&lt;/a&gt; I&apos;m just wondering if you have any sharded cluster use cases as well. I&apos;m concerned that the sharded scenario is even worse, as unlike with replica set members there is no check that the driver is able to perform that can verify that all the mongos servers are from the same deployment.&lt;/p&gt;</comment>
                            <comment id="5941470" author="JIRAUSER1276063" created="Mon, 11 Dec 2023 18:32:12 +0000"  >&lt;p&gt;Hello &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jeff.yemin%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jeff.yemin@mongodb.com&quot;&gt;jeff.yemin@mongodb.com&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;when it comes to different ports: we tested this with two replicaset with different ports and it was fine, so yes - using different ports solves the problem (or maybe I should say: causes the problem does not appear). The thing is that we have a lot of replicasets and we do not manage them manually, but with a special orchestrator (you can think of it as a k8s operator but it&apos;s not 100% true), so switching to different ports would mean for us a lot of work and a long process of deploying. That&apos;s we&apos;re hoping for this fix in the driver.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;And regarding the number of reports: when I was searching the Internet for the this error I came across several reports that resulted with a suggestion to update the server or the driver but there was no confirmation that this helped (like &lt;a href=&quot;https://www.mongodb.com/community/forums/t/cache-reader-no-keys-found-for-hmac-that-is-valid-for-time/198801/4&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;this&lt;/a&gt;). There were also people who said that after a reboot everything started working fine (like &lt;a href=&quot;https://stackoverflow.com/a/74477810&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;this&lt;/a&gt;). So I think there are some people who haven&apos;t solved this problem yet or the problem solved itself. Moreover it is very rare if you have a small scale environment. The problem also affects only virtual environments with dynamic IPs, like k8s. I have a strong feeling that most people who use K8s and Community Edition have at most few clusters there, and if someone has a lot of them, then he chooses Atlas. Although I&apos;m not sure how it works in Percona operator - do they use same or different ports. &lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="5941197" author="jeff.yemin" created="Mon, 11 Dec 2023 17:32:03 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=mknasiecki%40gmail.com&quot; class=&quot;user-hover&quot; rel=&quot;mknasiecki@gmail.com&quot;&gt;mknasiecki@gmail.com&lt;/a&gt; We&apos;re trying to figure out why we&apos;re not getting more widespread reports of this from our other Kubernetes users.  Is there anything that you&apos;re doing that seems out of the ordinary? The one thing that might be unusual is:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;One of the members of the replica set works on some physical machine and there are members of other replica sets on this machine as well. &lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;And in addition the replica set members run on the same port. &lt;/p&gt;

&lt;p&gt;Would it be possible, for example, to configure each replica set to connect on a distinct port?  I wonder if that&apos;s what others are doing.&lt;/p&gt;</comment>
                            <comment id="5935351" author="JIRAUSER1276063" created="Fri, 8 Dec 2023 10:44:44 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jeff.yemin%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jeff.yemin@mongodb.com&quot;&gt;jeff.yemin@mongodb.com&lt;/a&gt; thanks for taking care of this even though you were unable to reproduce the error. I built and tested the version from this branch and it seems to work!&lt;/p&gt;

&lt;p&gt;I wasn&apos;t able to reproduce the bug on the patched version, then&#160; - just for sure - I reverted it 4.8.2 it occurred again.&#160;&lt;/p&gt;

&lt;p&gt;I&apos;m looking forward to the release.&lt;/p&gt;

&lt;p&gt;Thanks again.&lt;/p&gt;</comment>
                            <comment id="5933802" author="jeff.yemin" created="Thu, 7 Dec 2023 18:38:41 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=mknasiecki%40gmail.com&quot; class=&quot;user-hover&quot; rel=&quot;mknasiecki@gmail.com&quot;&gt;mknasiecki@gmail.com&lt;/a&gt; I thought a bit more about this and may have a driver fix for you.  If you could build and test the code from &lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/pull/1276&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/pull/1276&lt;/a&gt;, I would be much obliged as I&apos;m not in a great position to reproduce the scenario you described.&lt;/p&gt;</comment>
                            <comment id="5933548" author="jeff.yemin" created="Thu, 7 Dec 2023 17:32:50 +0000"  >&lt;p&gt;Hi there, thank you for reaching out.  The driver appears to be operating per spec, so I don&apos;t think there is a fix we can just make in the driver to address this issues. I think it would benefit from a more holistic view through other support channels, e.g.:&lt;/p&gt;

&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Our MongoDB support portal, located at &lt;a href=&quot;https://support.mongodb.com/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;support.mongodb.com&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;Our MongoDB community portal, located &lt;a href=&quot;https://www.mongodb.com/community/forums/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;If you are an Atlas customer, you can also: Click the in-app chat icon in the lower right corner to chat with a MongoDB Support representative OR Click Support in the left-hand navigation to view Developer Resources.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;If you decide to pursue this further, please include a link to this issue so that others know that you already tried this avenue.&lt;/p&gt;

&lt;p&gt;Thank you!&lt;/p&gt;</comment>
                            <comment id="5920506" author="dbeng-pm-bot" created="Sat, 2 Dec 2023 16:15:56 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=mknasiecki%40gmail.com&quot; class=&quot;user-hover&quot; rel=&quot;mknasiecki@gmail.com&quot;&gt;mknasiecki@gmail.com&lt;/a&gt;, thank you for reporting this issue! The team will look into it and get back to you soon. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2508926">SERVER-83571</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2528096">DRIVERS-2798</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                        <customfield id="customfield_23812" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Assigned Team</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="26447"><![CDATA[Java Drivers]]></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_10257" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Documentation Changes</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11861"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14266" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Documentation Changes Summary</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;1.  What would you like to communicate to the user about this feature?&lt;br/&gt;
2.  Would you like the user to see examples of the syntax and/or executable code and its output?&lt;br/&gt;
3.  Which versions of the driver/connector does this apply to?&lt;/p&gt;</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i2kqk4:</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>