1mod dispatch;
2mod skeleton;
3
4use std::sync::LazyLock;
5
6pub use skeleton::{run_query, visualize_physical_plan};
7
8mod execute;
9pub use dispatch::build_streaming_query_executor;
10pub(crate) mod expression;
11mod graph;
12pub use graph::{GraphNodeKey, LogicalPipe, LogicalPipeKey};
13pub use skeleton::StreamingQuery;
14mod metrics;
15pub use metrics::{GraphMetrics, NodeMetrics};
16mod morsel;
17mod nodes;
18mod physical_plan;
19pub use physical_plan::{NodeStyle, PhysNode, PhysNodeKey, PhysNodeKind, ZipBehavior};
20mod pipe;
21mod utils;
22
23static DEFAULT_LINEARIZER_BUFFER_SIZE: LazyLock<usize> = LazyLock::new(|| {
25 std::env::var("POLARS_DEFAULT_LINEARIZER_BUFFER_SIZE")
26 .map(|x| x.parse().unwrap())
27 .unwrap_or(4)
28});
29
30static DEFAULT_DISTRIBUTOR_BUFFER_SIZE: LazyLock<usize> = LazyLock::new(|| {
31 std::env::var("POLARS_DEFAULT_DISTRIBUTOR_BUFFER_SIZE")
32 .map(|x| x.parse().unwrap())
33 .unwrap_or(4)
34});
35
36static DEFAULT_ZIP_HEAD_BUFFER_SIZE: LazyLock<usize> = LazyLock::new(|| {
37 std::env::var("POLARS_DEFAULT_ZIP_HEAD_BUFFER_SIZE")
38 .map(|x| x.parse().unwrap())
39 .unwrap_or(4)
40});