krabka_verified/
restore.rs1use creusot_std::prelude::*;
5
6#[krabka_macros::model_type]
8pub enum RestoreFilterDecision {
9 Keep,
10 Empty,
11 Filter,
12}
13
14#[krabka_macros::model_type]
19pub struct RestoreExclusions {
20 pub producer: bool,
22 pub offset: bool,
24 pub content: RestoreContentExclusions,
26}
27
28#[krabka_macros::model_type]
30pub struct RestoreContentExclusions {
31 pub key: bool,
33 pub header: bool,
35}
36
37#[krabka_macros::model_type]
39pub enum RestoreSnapshotState {
40 Missing,
42 Live,
44 DeleteStarted,
46 DeleteFinished,
48}
49
50#[krabka_macros::model_type]
52pub enum RestoreReconcileDecision {
53 Keep,
55 Exclude,
57 Disagree,
59}
60
61#[krabka_macros::model_type]
64pub enum RestoreTimestampType {
65 CreateTime,
66 LogAppendTime,
67}
68
69#[krabka_macros::model_type]
71pub struct RestoreBatchFrame {
72 pub base_offset: i64,
73 pub last_offset_delta: i32,
74 pub timestamp_type: RestoreTimestampType,
75 pub base_timestamp: i64,
76 pub max_timestamp: i64,
77}
78
79#[krabka_macros::model_type]
81pub struct RestoreRecordDeltas {
82 pub offset_delta: i32,
83 pub timestamp_delta: i64,
84}
85
86#[krabka_macros::model_type]
88pub struct RestoreProducer {
89 pub control: bool,
91 pub transactional: bool,
93 pub producer_id: i64,
94 pub producer_epoch: i16,
95 pub base_sequence: i32,
96}
97
98#[krabka_macros::model_type]
100pub struct RestoreLayout {
101 pub base_offset: i64,
102 pub last_offset_delta: i32,
103 pub records_count: i32,
104}
105
106mod record_coordinates;
107#[cfg(creusot)]
108pub use record_coordinates::{kafka_record_timestamp, restore_excluded, restore_record_placeable};
109pub use record_coordinates::{
110 restore_archive_reconcile, restore_batch_filter_decision, restore_batch_past_offset_bound,
111 restore_batch_step, restore_record_coordinates, restore_record_selected,
112};
113
114mod rewritten_record;
115#[cfg(creusot)]
116pub use rewritten_record::{
117 legal_header, legal_producer, non_idempotent_producer, restore_rewrite_record_legal,
118};
119pub use rewritten_record::{restore_rewritten_batch_header, restore_rewritten_record};
120
121#[cfg(test)]
122mod tests;