Hi team,
We are using a single connector for multiple tenants. When we onboard a new tenant for a cluster(considering this is the first tenant from that cluster) we create 2 connectors for the cluster, a trial connector and a main connector.
The trial connector has all the necessary database and tables in its config, while the main connector has some dummy database(no events), since we only want changes from the current point in time we use "snapshot.mode" as "schema_only".
After some point let's say another tenant is onboarded, we add it to the same trial connector.
For this
- we stop the trial connector
- clear history topic
- update config(with new tables and database and snapshot mode as schema only recovery)
- resume the connector
The changes for the new tenant start streaming but for the previous tenant which was already on the connector we receive duplicate events, the packets published during the duration get republished.
Similary when we use the same process to move a tenant to main connector, all changes from some random point of time get pushed to the topic.
Any idea why this happens and how to prevent it?