-
Sub-task
-
Resolution: Done
-
Major
-
None
Context
Heartbeat events in Debezium are synthetic change events emitted at fixed intervals when no other data changes are detected. They serve multiple operational purposes:
- Confirm that the connector is still connected to the source database
- Detect and recover from liveness failures
Quarkus users should be able to listen specifically for heartbeat events.
Decision
Introduce the possibility to observe certain heartbeat events thanks to Quarkus @Observes
import io.debezium.engine.ChangeEvent; import jakarta.enterprise.context.ApplicationScoped; @ApplicationScoped class HeartbeatListener { public void heartbeat(@Observes DebeziumHeartbeat event) { /// some logic to apply } }
References:
Debezium Design Document: https://github.com/debezium/debezium-design-documents/pull/16