<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 09:06:09 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-339] Topic names cleanup to match Kafka topic naming restrictions</title>
                <link>https://jira.mongodb.org/browse/KAFKA-339</link>
                <project id="16285" key="KAFKA">Kafka Connector</project>
                    <description>&lt;p&gt;By default, the MongoDB Kafka source connector publishes change event data to a Kafka topic with the same name as the MongoDB namespace from which the change events originated.&#160;&lt;/p&gt;

&lt;p&gt;As naming restrictions for database/collection names in MongoDB allow characters that are restricted for Kafka topics (e.g whitespace), such namespaces will fail in the connector.&lt;/p&gt;

&lt;p&gt;While &lt;em&gt;topic.namespace.map&lt;/em&gt; can be used as a workaround, it won&apos;t be of any help for newly created databases/collections and has to be constantly updated upon failures.&lt;/p&gt;

&lt;p&gt;The property &lt;em&gt;topic.mapper&lt;/em&gt; looks relevant but lacks any documentation and seems complicated to implement.&lt;/p&gt;

&lt;p&gt;IMO, a topic name sanitization should be implemented, something similar to how it&apos;s done in Debezium: &#160;&lt;a href=&quot;https://github.com/debezium/debezium/blob/4d577655968d2e00edb67a7e53702b8c38a17023/debezium-api/src/main/java/io/debezium/spi/topic/TopicNamingStrategy.java#L46&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/debezium/debezium/blob/4d577655968d2e00edb67a7e53702b8c38a17023/debezium-api/src/main/java/io/debezium/spi/topic/TopicNamingStrategy.java#L46&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(Debezium MongoDB Source Connector cleans up any illegal characters for topic name by converting them to underscores)&lt;/p&gt;</description>
                <environment></environment>
        <key id="2185860">KAFKA-339</key>
            <summary>Topic names cleanup to match Kafka topic naming restrictions</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</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="alonp@accessfintech.com">Alon Prantsipal</reporter>
                        <labels>
                    </labels>
                <created>Tue, 15 Nov 2022 02:47:17 +0000</created>
                <updated>Mon, 14 Aug 2023 17:13:42 +0000</updated>
                                                            <fixVersion>1.12.0</fixVersion>
                                                        <votes>1</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="4997308" author="esha.bhargava" created="Mon, 21 Nov 2022 15:50:59 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=alonp%40accessfintech.com&quot; class=&quot;user-hover&quot; rel=&quot;alonp@accessfintech.com&quot;&gt;alonp@accessfintech.com&lt;/a&gt; Thank you for reporting this issue. We&apos;ll consider it for a future release.&lt;/p&gt;</comment>
                            <comment id="4981809" author="JIRAUSER1271684" created="Tue, 15 Nov 2022 03:33:06 +0000"  >&lt;p&gt;I looked a bit more into the &lt;em&gt;topic.mapper&lt;/em&gt; and it does seem like it can be used for that purpose so it&apos;s not a blocker but it&apos;s still feels a bit risky and cumbersome to implement it with a java class rather than with a dedicated property.&lt;/p&gt;</comment>
                    </comments>
                    <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|hxky9k:</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>