<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 09:06: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>[KAFKA-374] Implement an error handler to address specific scenarios</title>
                <link>https://jira.mongodb.org/browse/KAFKA-374</link>
                <project id="16285" key="KAFKA">Kafka Connector</project>
                    <description>&lt;p&gt;There is currently a mongo.errors.tolerance flag which doesn&apos;t work as some customers expect.&#160; There is a need to be able to instruct the connector to fail under certain circumstances versus proceed.&#160; For example, it should be possible to fail the connector if the network connectivity to mongodb fails and in other cases throw data into the DLQ for malformed data for example.&#160; This ability to fine tune the behavior of errors is the feature request.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="2365181">KAFKA-374</key>
            <summary>Implement an error handler to address specific scenarios</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</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="robert.walters@mongodb.com">Robert Walters</reporter>
                        <labels>
                    </labels>
                <created>Mon, 12 Jun 2023 12:42:06 +0000</created>
                <updated>Mon, 22 Jan 2024 09:28:17 +0000</updated>
                                            <version>1.12.0</version>
                                    <fixVersion>1.12.0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="5589320" author="ross@10gen.com" created="Tue, 25 Jul 2023 12:55:24 +0000"  >&lt;p&gt;Transient errors are already retryable by the driver thanks to &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/retryable-writes/retryable-writes.rst&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;retryable writes&lt;/a&gt;. Retrying bulk operations from within the connector itself was removed in &lt;a href=&quot;https://jira.mongodb.org/browse/KAFKA-267&quot; title=&quot;Remove the retry mechanism in MongoSinkTask&quot; class=&quot;issue-link&quot; data-issue-key=&quot;KAFKA-267&quot;&gt;&lt;del&gt;KAFKA-267&lt;/del&gt;&lt;/a&gt; due to it being too niave and was replaced by the use of retryable writes.  &lt;/p&gt;

&lt;p&gt;The reason retrying from within the connector was broken, was it doesn&apos;t know about the internals of the bulk operation (including any batching) that may have occurred and unlike retryable writes it does not differentiate between transient and non-transient errors.&lt;/p&gt;

&lt;p&gt;Note that all errors that occur are reported to the DLQ.  This includes any &quot;transient&quot; style errors that fail on retry.&lt;/p&gt;

&lt;p&gt;Once the &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/client-side-operations-timeout/client-side-operations-timeout.rst#retryability&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Client side operation timeout&lt;/a&gt; is implemented (&lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-3828&quot; title=&quot;Client Side Operations Timeout&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-3828&quot;&gt;JAVA-3828&lt;/a&gt;) then that should be the timeout to use for setting the limits of retryability.&lt;/p&gt;

&lt;p&gt;So I&apos;m not sure there should be any change to the connector here and think it should be closed as &quot;Won&apos;t fix&quot;.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10720">
                    <name>Cloners</name>
                                            <outwardlinks description="clones">
                                        <issuelink>
            <issuekey id="2396573">KAFKA-380</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2396573">KAFKA-380</issuekey>
        </issuelink>
                            </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_21553" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Quarter</customfieldname>
                        <customfieldvalues>
                                        <label>FY24Q3</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr1d6r:j</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>