Skip to main content

laminar_core/shuffle/
mod.rs

1//! Cross-instance shuffle over Tonic gRPC client-streaming: one
2//! client-streaming call per peer pair carrying [`ShuffleMessage`](crate::shuffle::message::ShuffleMessage) frames.
3//! Backpressure is the HTTP/2 flow-control window plus the bounded crossfire
4//! inbound queue on the consuming side. The real transport is compiled under
5//! `cluster`; the default build keeps a networking-free shim.
6
7pub mod barrier_tracker;
8pub mod message;
9pub mod routing;
10pub mod transport;
11
12pub use barrier_tracker::BarrierTracker;
13pub use message::ShuffleMessage;
14pub use routing::{
15    row_vnodes, slice_batch_by_targets, slice_batch_by_vnode, slice_batch_by_vnodes,
16};
17#[cfg(feature = "cluster")]
18pub use transport::SHUFFLE_ADDR_KEY;
19pub use transport::{ShufflePeerId, ShuffleReceiver, ShuffleSender};