pub struct ChunkConfig {
pub target_bytes: usize,
pub encode_policy: ErrorPolicy,
}Expand description
Tuning for the terminal stage’s per-shard chunking.
Fields§
§target_bytes: usizeSeal and send a chunk once its frame reaches this size. Small
enough to flow steadily, large enough to amortize queue traffic;
sink workers merge chunks into full-size batches, so this does
not bound insert sizes. A buffer below this size is not held
indefinitely: the controller flushes partial chunks on every commit
tick (checkpoint.interval), and the driver flushes them on an idle
lull, so while the pipeline is unblocked a partial buffer holds its
acknowledgements for at most ~one checkpoint interval. (A driver
wedged retrying a blocked batch defers the flush until the sink
drains — but nothing commits during that time anyway.)
encode_policy: ErrorPolicyPolicy for record-level encoder failures. Skip drops the record
(metrics-counted); Fail stops the pipeline. An encoder error of
ErrorClass::Fatal stops the pipeline regardless of this policy
— fatal means the component is broken, not the record.
Trait Implementations§
Source§impl Clone for ChunkConfig
impl Clone for ChunkConfig
Source§fn clone(&self) -> ChunkConfig
fn clone(&self) -> ChunkConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more