Hi Ryanne,

I tried setting the groups in mm2.properties, still no luck. And, the
consumer application is not kafka-console-consumer, so no issues there.
I noticed in the MM logs that MirrorCheckpointConnector is created but
without any connector task, not even a single error in the logs though. I
feel this is the reason that the checkpoints topics are empty. Below are
some log traces which indicate the same:

[2020-08-05 01:38:12,349] INFO Started MirrorCheckpointConnector with 0
consumer groups.
(org.apache.kafka.connect.mirror.MirrorCheckpointConnector:79)
[2020-08-05 01:38:12,350] INFO Finished creating connector
MirrorCheckpointConnector (org.apache.kafka.connect.runtime.Worker:273)
...
[2020-08-05 01:46:12,145] INFO [Worker clientId=connect-1, groupId=B-mm2]
Joined group at generation 8 with protocol version 2 and got assignment:
Assignment{error=0,
leader='connect-1-6529239d-299d-4fc9-aea7-80c94f0838ab',
leaderUrl='NOTUSED/B', offset=20, connectorIds=[MirrorSourceConnector,
MirrorHeartbeatConnector, MirrorCheckpointConnector],
taskIds=[MirrorSourceConnector-0, MirrorHeartbeatConnector-0],
revokedConnectorIds=[], revokedTaskIds=[], delay=0} with rebalance delay: 0
(org.apache.kafka.connect.runtime.distributed.DistributedHerder:1549)

Let me know your thoughts as to why the MirrorCheckpointConnector task is
not getting created ?

Also, just fyi, I am using KafkaCat to produce messages into the local
topics of the kafka clusters. I hope this should not create any issues.

--
Sunny


On Tue, Aug 4, 2020 at 9:17 PM Ryanne Dolan <ryannedo...@gmail.com> wrote:

> Sunny, check the groups and groups.blacklist properties. By default, MM2
> won't replicate consumer groups from kafka-console-consumer, for example.
> Sometimes that confuses people when testing MM2.
>
> Also check the logs to see if there is any reason MirrorCheckpointConnector
> might be failing to start.
>
> Ryanne
>
> On Tue, Aug 4, 2020 at 10:27 AM Sunny Lohani <sunny.loh...@gmail.com>
> wrote:
>
> > Hi Ryanne,
> >
> > First of all, thanks for a quick revert. Actually, I have a consumer
> > application consuming messages in cluster A and then I failover the
> > consumer from A to cluster B. Also, the consumer is subscribed to both
> > local and remote topics. Let's say the local topic name in both the
> > clusters A and B is test-topic. Here is a sequence of steps that I am
> > following before and after the failover:
> >
> > 1. Consumer application subscribes to topics test-topic and B.test-topic
> in
> > cluster A with group.id "test-consumer"
> > 2. It consumes some messages from both the topics.
> > 3. Now, we stop the consumer application and restart it pointing to
> cluster
> > B, subscribed to topics test-topic and A.test-topic, with group.id
> > "test-consumer". I use the RemoteClusterUtils.translateOffsets() here.
> > 4. The method returns an empty map as well as the checkpoints topic in
> both
> > the clusters is empty.
> >
> > Let me know if you see anything wrong here.
> >
> > Thanks,
> > Sunny
> >
> >
> > On Tue, Aug 4, 2020 at 8:26 PM Ryanne Dolan <ryannedo...@gmail.com>
> wrote:
> >
> > > Sunny, is it possible there are no consumer groups? There will be no
> > > checkpoints, and thus nothing to use for offset translation, if there
> are
> > > no upstream consumer groups.
> > >
> > > Ryanne
> > >
> > > On Tue, Aug 4, 2020, 9:28 AM Sunny Lohani <sunny.loh...@gmail.com>
> > wrote:
> > >
> > > > Hi,
> > > >
> > > > I have 2 data centers, each having single node Zookeeper and Kafka
> > > cluster.
> > > > I have a topic (single partition) in both the data center kafka
> > > clusters. I
> > > > am using MM 2.0 as a dedicated cluster for bi-directional replication
> > of
> > > > the topic as well as using RemoteClusterUtils.translateOffsets() in
> my
> > > > application for offset translation during failover. But the method is
> > > > returning an empty map due to which the consumer is not resuming from
> > > > proper offsets for local/remote topics.
> > > >
> > > > When I investigated further, I found that the checkpoint
> > > > topics A.checkpoints.internal and B.checkpoints.internal in
> respective
> > > > clusters do not have any kafka message. I don't see any errors in the
> > > > mirror maker console logs. I searched everywhere on the internet but
> > > could
> > > > not get any help. Below is the mm.properties:
> > > >
> > > > clusters = A, B
> > > > A.bootstrap.servers = 10.34.45.113:19092
> > > > B.bootstrap.servers = 10.34.45.113:29092
> > > >
> > > > A->B.enabled = true
> > > > A->B.topics = .*
> > > > B->A.enabled = true
> > > > B->A.topics = .*
> > > >
> > > > # Setting replication factor of newly created remote topics
> > > > replication.factor=1
> > > >
> > > > checkpoints.topic.replication.factor=1
> > > > heartbeats.topic.replication.factor=1
> > > > offset-syncs.topic.replication.factor=1
> > > >
> > > > offset.storage.replication.factor=1
> > > > status.storage.replication.factor=1
> > > > config.storage.replication.factor=1
> > > >
> > > > sync.topic.acls.enabled = false
> > > >
> > > > emit.checkpoints.enabled = true
> > > > emit.checkpoints.interval.seconds = 5
> > > > ----
> > > >
> > > > Need help on this urgently. Thanks in advance.
> > > >
> > > > Thanks & Regards,
> > > > Sunny Kumar Lohani,
> > > >
> > >
> >
>

Reply via email to