ecararus commented on pull request #11803:
URL: https://github.com/apache/kafka/pull/11803#issuecomment-1050407569
When I use mirrormaker it replicates the topics with different name, name of
target is built based on
sourceClusterAlias + separator + topic
implementation is
[here](https://github.com/apache/kafka/blob/trunk/connect/mirror-client/src/main/java/org/apache/kafka/connect/mirror/DefaultReplicationPolicy.java#L49).
Proposed improvement consist in:
Adding new config property key: target.replication.policy.topic_map
E.I.
source-> target.replication.policy.class=
org.apache.kafka.connect.mirror.RenameTopicReplicationPolicy
source->target.replication.policy.separator = .
source->target.replication.policy.topic_map=
SOURCER_TOPIC_A,DESTINATION_TOPIC_A; SOURCER_TOPIC_B,DESTINATION_TOPIC_B;
and add new RenameTopicReplicationPolicy which will be responsible to:
1. override configure method load target.replication.policy.topic_map into a
Map where Key is source topic name and value is target topic name
2. override formatRemoteTopic so the target topic name will be loaded based
on config
@Override
public String formatRemoteTopic(String sourceClusterAlias, String topic) {
String targetTopic = topicMap.containsKey(topic) ? topicMap.get(topic)
: topic ;
return super.formatRemoteTopic(sourceClusterAlias,targetTopic);
}
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]