<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:09:58 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-587] URI parsing logs warning on w &lt; -1 but otherwise ignores it</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-587</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;While adding validation for &lt;tt&gt;journal&lt;/tt&gt; and &lt;tt&gt;w=0&lt;/tt&gt; or &lt;tt&gt;w=-1&lt;/tt&gt; conflict for &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-580&quot; title=&quot;Write concern with w=0 and j=true is a GLE op&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-580&quot;&gt;&lt;del&gt;CDRIVER-580&lt;/del&gt;&lt;/a&gt;, I noticed that parsing for values of &lt;tt&gt;w&lt;/tt&gt; less than -1 are ignored apart from a logged error. This means that URI parsing can still succeed.&lt;/p&gt;

&lt;p&gt;I don&apos;t think it&apos;s possible to fail during &lt;tt&gt;_mongoc_uri_build_write_concern()&lt;/tt&gt;, which stores parsed options on the write concern struct, as that function provides no API for relaying an error upstream. That&apos;s why my PR in &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-580&quot; title=&quot;Write concern with w=0 and j=true is a GLE op&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-580&quot;&gt;&lt;del&gt;CDRIVER-580&lt;/del&gt;&lt;/a&gt; validated the write concern one level up in &lt;tt&gt;mongoc_uri_new()&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;That said, I think we could easily catch an invalid &lt;tt&gt;w&lt;/tt&gt; value in &lt;tt&gt;mongoc_uri_parse_option()&lt;/tt&gt;, which does allow us to return &lt;tt&gt;false&lt;/tt&gt; on an error. The relevant code segment would be:&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;   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;if (*value == &apos;-&apos; || isdigit(*value)) {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;   v_int = (int) strtol (value, NULL, 10);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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;   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;   BSON_APPEND_INT32 (&amp;amp;uri-&amp;gt;options, &quot;w&quot;, v_int);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&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-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;}&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</description>
                <environment></environment>
        <key id="191008">CDRIVER-587</key>
            <summary>URI parsing logs warning on w &lt; -1 but otherwise ignores it</summary>
                <type id="1" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14703&amp;avatarType=issuetype">Bug</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</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="9">Done</resolution>
                                        <assignee username="backlog-c-driver">Backlog - C Driver Team</assignee>
                                    <reporter username="jmikola@mongodb.com">Jeremy Mikola</reporter>
                        <labels>
                    </labels>
                <created>Fri, 20 Mar 2015 19:39:34 +0000</created>
                <updated>Wed, 3 May 2017 22:15:02 +0000</updated>
                            <resolved>Tue, 11 Oct 2016 19:24:47 +0000</resolved>
                                    <version>1.1.2</version>
                                    <fixVersion>TBD</fixVersion>
                                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="1405621" author="jesse" created="Tue, 11 Oct 2016 19:24:47 +0000"  >&lt;p&gt;This works as designed.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/connection-string/connection-string-spec.rst&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/specifications/blob/master/source/connection-string/connection-string-spec.rst&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&quot;Any invalid Values for a given key MUST be ignored and MUST log a WARN level message&quot;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="224548">CDRIVER-782</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="189317">CDRIVER-580</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="201392">CDRIVER-628</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hs7bvb:</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>