Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

perf(stream): concurrently fetch row from storage and refill cache #19629

Draft
wants to merge 28 commits into
base: 12-13-add_bench_with_join_type_and_cache_workload
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions src/common/src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1150,6 +1150,11 @@ pub struct StreamingDeveloperConfig {
/// When true, all jdbc sinks with connector='jdbc' and jdbc.url="jdbc:postgresql://..."
/// will be switched from jdbc postgresql sinks to rust native (connector='postgres') sinks.
pub switch_jdbc_pg_to_native: bool,

/// Configure the system-wide cache row cardinality of hash join.
/// For example, if this is set to 1000, it means we can have at most 1000 rows in cache.
#[serde(default = "default::developer::streaming_hash_join_entry_state_max_rows")]
pub hash_join_entry_state_max_rows: usize,
}

/// The subsections `[batch.developer]`.
Expand Down Expand Up @@ -2113,6 +2118,11 @@ pub mod default {
pub fn switch_jdbc_pg_to_native() -> bool {
false
}

pub fn streaming_hash_join_entry_state_max_rows() -> usize {
// NOTE(kwannoel): This is just an arbitrary number.
30000
}
}

pub use crate::system_param::default as system;
Expand Down
Loading
Loading