Skip to main content

polars_stream/
lib.rs

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