<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:24:47 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-2122] Remove the line about only sending bypassDocumentValidation if it&#8217;s set to true</title>
                <link>https://jira.mongodb.org/browse/DRIVERS-2122</link>
                <project id="10980" key="DRIVERS">Drivers</project>
                    <description>&lt;p&gt;Consider removing the requirement about sending bypassDocumentValidation to the server only if the caller explicitly provides a true value.&lt;/p&gt;

&lt;p&gt;See slack discussion for details: &lt;a href=&quot;https://mongodb.slack.com/archives/C72LB5RPV/p1575411165271300&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://mongodb.slack.com/archives/C72LB5RPV/p1575411165271300&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The spec change which should be reconsidered: &lt;a href=&quot;https://github.com/mongodb/specifications/pull/266/files&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/specifications/pull/266/files&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="1045440">DRIVERS-2122</key>
            <summary>Remove the line about only sending bypassDocumentValidation if it&#8217;s set to true</summary>
                <type id="14901" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14700&amp;avatarType=issuetype">Spec Change</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="10038" iconUrl="https://jira.mongodb.org/images/icons/subtask.gif" description="">Backlog</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="dmitry.lukyanov@mongodb.com">Dmitry Lukyanov</reporter>
                        <labels>
                    </labels>
                <created>Mon, 9 Dec 2019 22:14:42 +0000</created>
                <updated>Thu, 31 Mar 2022 13:46:28 +0000</updated>
                                                                <component>CRUD</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="2722439" author="jmikola@gmail.com" created="Mon, 13 Jan 2020 17:41:54 +0000"  >&lt;p&gt;Slack conversation (so we don&apos;t lose it to our own retention policy):&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;b&gt;robertstam&lt;/b&gt;&lt;br/&gt;
The C# driver has MANY options that are nullable booleans, and they are all interpreted such that null means don&apos;t send this argument to the server. Changing the existing nullable boolean bypassDocumentValidation to non-nullable is a breaking change. Changing the behavior of the existing nullable boolean to interpret null and false to mean the same thing (i.e. don&apos;t send the value to the server) is more doable but it&apos;s confusing to have a nullable boolean when null doesn&apos;t mean anything.&lt;/p&gt;

&lt;p&gt;Or rather, null doesn&apos;t mean anything special... null would be a synonym for false if we made this change. But that is totally unexpected behavior when compared to how nullable boolean arguments in general work.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;mbroadst&lt;/b&gt;&lt;br/&gt;
@robertstam can you please open a SPEC ticket recommending language changes? It looks like y&apos;all decided this wasn&apos;t a good idea for C#, and I think drivers should be consistent here&lt;/p&gt;

&lt;p&gt;&lt;b&gt;jmikola&lt;/b&gt;&lt;br/&gt;
I don&apos;t think anyone is proposing changing the option to non-nullable (if that was even a concern). I&apos;d argue the only unexpected thing with changing a driver to comply with &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-450&quot; title=&quot;Only send bypassDocumentValidation if it&amp;#39;s true&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-450&quot;&gt;&lt;del&gt;DRIVERS-450&lt;/del&gt;&lt;/a&gt; is that a user would no longer see bypassDocumentValidation=false sent across the wire (e.g. APM, WireShark). Users probably don&apos;t even need to know that we&apos;ll totally ignore the option if they supply false.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;mbroadst&lt;/b&gt;&lt;br/&gt;
My read on Jeffs comment earlier in #driver-devs is that us ignoring them explicitly setting it to false is a potential issue. @jeff did I misunderstand?&lt;/p&gt;

&lt;p&gt;&lt;b&gt;jeff&lt;/b&gt;&lt;br/&gt;
No, that&#8217;s accurate. But it&#8217;s also unlikely that the server will change the default value for this option, so it&#8217;s not a huge practical concern.  In terms of APM assertions for future CRUD tests, inconsistency here will cause a problem if we add a test where the operation explicitly sets bypassDocumentValidation to false, and then asserting that the command sent to the server does not have that field.  Not a problem right now, but could be in the future.&lt;/p&gt;&lt;/blockquote&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                            <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_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_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|huk6iv:</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>