You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Publishing SnapshotOffsetEvent to Kafka doesn't handle the scenario where there are not-yet published Customer/Order events in the database (binlog). Consequently, the SnapshotOffsetEvent might be followed by those events. The view service will consume those events and be confused.
Publishing Customer/OrderSnapshot events via the database is inefficient. Much better to publish directly to Kafka
I propose the following algorithm:
Lock tables
Get binlog offset from database - can this be done for MySQL and Process
Wait for CDC to process up to that offset - CDC API has an API to retrieve binlog position - at this point because the MESSAGE table is locked there are no more events to be published.
Publish all messages directly to Kafka
Unlock tables
The text was updated successfully, but these errors were encountered:
There are two problems with the current approach:
Publishing SnapshotOffsetEvent to Kafka doesn't handle the scenario where there are not-yet published Customer/Order events in the database (binlog). Consequently, the SnapshotOffsetEvent might be followed by those events. The view service will consume those events and be confused.
Publishing Customer/OrderSnapshot events via the database is inefficient. Much better to publish directly to Kafka
I propose the following algorithm:
The text was updated successfully, but these errors were encountered: