<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:26:14 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>[DRIVERS-2708] Refactor client metadata transmission to overflow to the hello command comment field</title>
                <link>https://jira.mongodb.org/browse/DRIVERS-2708</link>
                <project id="10980" key="DRIVERS">Drivers</project>
                    <description>&lt;p&gt;When a driver performs the initial handshake with the server the initial payload includes a &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#id12&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;client&lt;/tt&gt;&lt;/a&gt; document that identifies the system the driver is running on. &lt;/p&gt;

&lt;p&gt;This metadata doesn&apos;t factor into the success of a handshake, though if the &lt;a href=&quot;https://github.com/mongodb/mongo/blob/r6.1.0/src/mongo/rpc/metadata/client_metadata.cpp#L74&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;transmitted size exceeds 512 bytes&lt;/a&gt;, it can result in a failed handshake.&lt;/p&gt;

&lt;p&gt;Recently there have been a number of initiatives (DRIVERS-2209, &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2570&quot; title=&quot;Driver Container and Kubernetes Awareness&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2570&quot;&gt;DRIVERS-2570&lt;/a&gt;) that have required additional information to be included in the handshake metadata. Furthermore, &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2483&quot; title=&quot;Optimize Handshake Client Metadata&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2483&quot;&gt;&lt;del&gt;DRIVERS-2483&lt;/del&gt;&lt;/a&gt; was identified as an opportunity to optimize the payload to further reduce the size and improve handling of &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#client-platform&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;client.platform&lt;/tt&gt;&lt;/a&gt;, which is a &quot;free for all&quot; (not ideal, but justified by the &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#design-rationale&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;design rationale&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;To better ensure the success of an initial handshake, as well as support the continued evolution of the metadata being captured the metadata included in the handshake transmission should be refactored.&lt;/p&gt;

&lt;p&gt;This would include:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Proposing a change to the 8.0 server to explicitly log a &lt;tt&gt;hello&lt;/tt&gt; command that contains client metadata (at the default &lt;tt&gt;I&lt;/tt&gt; verbosity). This shouldn&apos;t spam as the server &lt;a href=&quot;https://github.com/mongodb/mongo/blob/05c88c19a1564774f0d54fd4d0ec6a271ba24b2e/src/mongo/rpc/metadata/client_metadata.cpp#L510-L512&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;errors if a metadata document is sent after the initial &lt;tt&gt;hello&lt;/tt&gt;&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;Revising the &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#limitations&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;truncation logic in the handshake specification&lt;/a&gt; to define &quot;overflow&quot; logic instead (that would target the &lt;tt&gt;hello&lt;/tt&gt; command&apos;s &lt;tt&gt;comment&lt;/tt&gt; field)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;This would &lt;b&gt;not&lt;/b&gt; include:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Moving &lt;b&gt;all&lt;/b&gt; client metadata to the &lt;tt&gt;command&lt;/tt&gt; field (client metadata would continue to be used)&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="2427930">DRIVERS-2708</key>
            <summary>Refactor client metadata transmission to overflow to the hello command comment field</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="11262" iconUrl="https://jira.mongodb.org/images/icons/statuses/generic.png" description="">Investigating</status>
                    <statusCategory id="4" key="indeterminate" colorName="inprogress"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="shubham.ranjan@mongodb.com">Shubham Ranjan</assignee>
                                    <reporter username="alex.bevilacqua@mongodb.com">Alex Bevilacqua</reporter>
                        <labels>
                    </labels>
                <created>Mon, 28 Aug 2023 13:42:54 +0000</created>
                <updated>Wed, 27 Sep 2023 15:17:31 +0000</updated>
                                                                <component>Handshake</component>
                                        <votes>1</votes>
                                    <watches>7</watches>
                                                                                                                    <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="2167208">DRIVERS-2483</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                                        </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                            <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10951" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Driver Changes</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10748"><![CDATA[Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_18358" key="com.atlassian.jira.plugin.system.customfieldtypes:userpicker">
                        <customfieldname>Product Manager</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>shubham.ranjan@mongodb.com</customfieldvalue>

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