<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 09:01:21 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-4148] Enable TCP_USER_TIMEOUT by default when possible</title>
                <link>https://jira.mongodb.org/browse/JAVA-4148</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>

    &lt;div id=&quot;script-target-wrapper&quot;&gt;
        &lt;br&gt;
        &lt;b&gt;DRIVERS Ticket Description&lt;/b&gt;
        &lt;div id=&quot;lang-script-target&quot;&gt;
            &lt;!-- This block of HTML and the script in it auto-populate the DRIVERS ticket description on page load. --&gt;
            Script Target - If you can read this text, the script has failed
            &lt;script&gt;
                $.get(&apos;https://jira.mongodb.org/browse/DRIVERS-1692&apos;, function(data) {
                    var description = $(data).find(&quot;#description-val&quot;);
                    $(&quot;#lang-script-target&quot;).html(description);
                });
            &lt;/script&gt;
        &lt;/div&gt;
    &lt;/div&gt;
</description>
                <environment></environment>
        <key id="1708753">JAVA-4148</key>
            <summary>Enable TCP_USER_TIMEOUT by default when possible</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="2">Won&apos;t Fix</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="backlog-server-pm">Backlog - Core Eng Program Management Team</reporter>
                        <labels>
                            <label>spec-compliance</label>
                    </labels>
                <created>Mon, 10 May 2021 16:43:42 +0000</created>
                <updated>Tue, 28 Jun 2022 17:03:38 +0000</updated>
                            <resolved>Mon, 17 May 2021 14:11:21 +0000</resolved>
                                                                    <component>Connection Management</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="3764480" author="JIRAUSER1258163" created="Mon, 10 May 2021 18:03:25 +0000"  >&lt;p&gt;I believe the Linux kernel &lt;a href=&quot;https://man7.org/linux/man-pages/man7/tcp.7.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;TCP_USER_TIMEOUT&lt;/tt&gt;&lt;/a&gt; socket option has not yet been implemented neither in OpenJDK JDK, nor in Oracle JDK (see &lt;a href=&quot;https://docs.oracle.com/en/java/javase/16/docs/api/jdk.net/jdk/net/ExtendedSocketOptions.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;ExtendedSocketOptions&lt;/a&gt; and &lt;a href=&quot;https://bugs.openjdk.java.net/browse/JDK-8038145&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;JDK-8038145 Support for Socket option TCP_USER_TIMEOUT&lt;/a&gt;), and it is also not part of the Java SE API (see &lt;a href=&quot;https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/net/StandardSocketOptions.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;StandardSocketOptions&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/netty/netty/pull/4175#issuecomment-136353467&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Netty implemented this option&lt;/a&gt; in its Linux-specific&#160;&lt;a href=&quot;https://man7.org/linux/man-pages/man7/epoll.7.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;epoll&lt;/tt&gt;&lt;/a&gt;&#160;transport implementation (uses OS API directly), which &lt;a href=&quot;https://netty.io/wiki/native-transports.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;exists in addition to&lt;/a&gt; a deprecated OIO and modern NIO transport implementations (these are based on the JDK implementations), and macOS-specific &lt;a href=&quot;https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man2/kqueue.2.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;kqueue&lt;/tt&gt;&lt;/a&gt; transport implementation (unfortunately,&#160;Apple stopped hosting its man pages long ago, so there is no up-to-date documentation).&lt;/p&gt;

&lt;p&gt;Given that the Java driver uses either NIO directly or uses a Netty transport chosen by a user via &lt;a href=&quot;https://mongodb.github.io/mongo-java-driver/4.2/apidocs/mongodb-driver-core/com/mongodb/connection/netty/NettyStreamFactoryFactory.Builder.html#eventLoopGroup(io.netty.channel.EventLoopGroup)&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;NettyStreamFactoryFactory.Builder.eventLoopGroup&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;https://mongodb.github.io/mongo-java-driver/4.2/apidocs/mongodb-driver-core/com/mongodb/connection/netty/NettyStreamFactoryFactory.Builder.html#socketChannelClass(java.lang.Class)&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;NettyStreamFactoryFactory.Builder.socketChannelClass&lt;/tt&gt;&lt;/a&gt;, the only way to support &lt;tt&gt;TCP_USER_TIMEOUT&lt;/tt&gt; for us is to specify &lt;a href=&quot;https://netty.io/4.1/api/io/netty/channel/epoll/EpollChannelOption.html#TCP_USER_TIMEOUT&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;EpollChannelOption.TCP_USER_TIMEOUT&lt;/tt&gt;&lt;/a&gt; iff a user instructed us to use &lt;a href=&quot;https://netty.io/4.1/api/io/netty/channel/epoll/EpollSocketChannel.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;EpollSocketChannel&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10620">
                    <name>Issue split</name>
                                                                <inwardlinks description="split from">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="2078771">JAVA-4664</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|hyucyv:</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>