Skip to main content

reifydb_core/actors/
cdc.rs

1// SPDX-License-Identifier: Apache-2.0
2// Copyright (c) 2025 ReifyDB
3
4use reifydb_runtime::actor::system::ActorHandle;
5use reifydb_type::{Result, value::datetime::DateTime};
6
7use crate::{common::CommitVersion, delta::Delta};
8
9pub type CdcProduceHandle = ActorHandle<CdcProduceMessage>;
10
11#[derive(Clone, Debug)]
12pub enum CdcProduceMessage {
13	Produce {
14		version: CommitVersion,
15		changed_at: DateTime,
16		deltas: Vec<Delta>,
17	},
18	Tick,
19}
20
21pub type CdcPollHandle = ActorHandle<CdcPollMessage>;
22
23pub enum CdcPollMessage {
24	Poll,
25
26	CheckWatermark,
27
28	ConsumeResponse(Result<()>),
29}