<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:23:13 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-1335] Improve Awareness of Network Compressors for Drivers</title>
                <link>https://jira.mongodb.org/browse/DRIVERS-1335</link>
                <project id="10980" key="DRIVERS">Drivers</project>
                    <description>&lt;div class=&quot;panel&quot; style=&quot;background-color: #fafbfc;border-color: #21313c;border-style: solid;border-width: 1px;&quot;&gt;&lt;div class=&quot;panelContent&quot; style=&quot;background-color: #fafbfc;&quot;&gt;
&lt;h3&gt;&lt;a name=&quot;Summary&quot;&gt;&lt;/a&gt;&lt;b&gt;Summary&lt;/b&gt;&lt;/h3&gt;

&lt;h4&gt;&lt;a name=&quot;Howdoesthisaffecttheenduser%3F&quot;&gt;&lt;/a&gt;How does this affect the end user? &lt;/h4&gt;
&lt;p&gt;Customers have complained that network transfer costs are extreme and unpredictable, leading to budget overruns of up to 12x their expected costs. We believe that enabling compression in drivers will help mitigate this issue. This problem likely affects all Atlas customers to some degree. &lt;/p&gt;
&lt;h4&gt;&lt;a name=&quot;Isthisissueurgent%3F&quot;&gt;&lt;/a&gt;Is this issue urgent?&lt;/h4&gt;
&lt;p&gt;It is not urgent, but it is a problem we should solve - it is not a nice to have.&lt;/p&gt;
&lt;h4&gt;&lt;a name=&quot;Isthisticketrequiredbyadownstreamteam%3F&quot;&gt;&lt;/a&gt;Is this ticket required by a downstream team?&lt;/h4&gt;

&lt;h4&gt;&lt;a name=&quot;Isthisticketonlyfortests%3F&quot;&gt;&lt;/a&gt;Is this ticket only for tests?&lt;/h4&gt;
&lt;p&gt;&lt;em&gt;Is this ticket have any functional impact, or is it just test improvements?&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="1410371">DRIVERS-1335</key>
            <summary>Improve Awareness of Network Compressors for Drivers</summary>
                <type id="11" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14707&amp;avatarType=issuetype">Epic</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="rachelle.palmer@mongodb.com">Rachelle Palmer</reporter>
                        <labels>
                    </labels>
                <created>Wed, 15 Jul 2020 13:15:22 +0000</created>
                <updated>Mon, 5 Feb 2024 16:00:12 +0000</updated>
                                                                <component>Performance</component>
                    <component>Wire Protocol</component>
                                        <votes>0</votes>
                                    <watches>20</watches>
                                                                                                                <comments>
                            <comment id="5605722" author="dbeng-pm-bot" created="Tue, 1 Aug 2023 18:25:57 +0000"  >&lt;p&gt;Alex Bevilacqua renamed project from &quot;Enable Compression by Default in all Drivers&quot; to &quot;Improve Awareness of Network Compressors for Drivers&quot;&lt;/p&gt;</comment>
                            <comment id="3947563" author="jeff.yemin" created="Fri, 16 Jul 2021 18:20:20 +0000"  >&lt;p&gt;One other thing to consider.&#160; If we enable it by default, we probably need to specify a way to explicitly disable it.&#160; I suspect that &lt;tt&gt;mongodb://localhost/?compressors=&lt;/tt&gt; is interpreted the same way as just&#160;&lt;tt&gt;mongodb://localhost&lt;/tt&gt;&#160;in drivers, so couldn&apos;t be used to disable compression without some additional work.&lt;/p&gt;</comment>
                            <comment id="3947550" author="behackett" created="Fri, 16 Jul 2021 18:12:56 +0000"  >&lt;p&gt;Python can do this fairly easily. Like Java, an optional dependency just becomes required (which will annoy some users). However, we&apos;ll have to figure out if the python zstd and snappy modules work on s390x, POWER, ARM, etc, and not add the dependency if the architecture isn&apos;t supported.&lt;/p&gt;</comment>
                            <comment id="3947138" author="jeff.yemin" created="Fri, 16 Jul 2021 15:25:14 +0000"  >&lt;p&gt;This would be pretty simple in the Java driver.&#160; The driver currently takes an optional dependency on &lt;a href=&quot;https://github.com/luben/zstd-jni&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/luben/zstd-jni&lt;/a&gt;&#160;for zstd and &lt;a href=&quot;https://github.com/xerial/snappy-java&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/xerial/snappy-java&lt;/a&gt;&#160;for snappy.&#160; Both of these libraries offer JNI-based wrappers of the respective C implementations of those algorithms.&#160; To enable either by default, we would just need to make the dependency required.&#160; For both libraries, the C-based shared libraries are packaged along with the Java wrapper and deployed to Maven Central.&#160; They typically track the C library releases closely and release a new wrapper every time the C-based library is released.&#160; So there is no need for users of the driver to compile or download anything, unless they are running on an obscure platform for which there is no C library support (though the Snappy library offers a pure Java implementation that it uses as a fallback if it&apos;s unable to load the C library on the host platform).&lt;/p&gt;

&lt;p&gt;The downsides are&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;We would have to be more careful about tracking and updating our dependencies on these libraries (currently we don&apos;t worry about that since applications have to opt in to the dependency and so are responsible for updating the dependencies).&lt;/li&gt;
	&lt;li&gt;the implementations wrap a C library so it makes users&apos; applications susceptible to crashes in ways that they did not sign up for/opt in to. This could cause consternation for some users.&lt;/li&gt;
&lt;/ul&gt;
</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="1869216">RUBY-2807</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="649245">DRIVERS-600</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1812771">WT-7814</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2412006">SERVER-79842</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2419190">SERVER-80150</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                            <customfield id="customfield_20965" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Cost Threshold %</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>100.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_20963" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Cost to Date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</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_10858" key="com.pyxis.greenhopper.jira:gh-epic-label">
                        <customfieldname>Epic Name</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Improve Awareness of Network Compressors for Drivers</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10859" key="com.pyxis.greenhopper.jira:gh-epic-status">
                        <customfieldname>Epic Status</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10640"><![CDATA[To Do]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_20964" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Final Cost Estimate</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_18358" key="com.atlassian.jira.plugin.system.customfieldtypes:userpicker">
                        <customfieldname>Product Manager</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>alex.bevilacqua@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hxhuon:</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>
                                                                                                                                                                                                                                        <customfield id="customfield_10856" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Scope Cost Estimate</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>