risingwave_common::config

Struct StreamingDeveloperConfig

source
pub struct StreamingDeveloperConfig {
Show 28 fields pub enable_executor_row_count: bool, pub connector_message_buffer_size: usize, pub unsafe_extreme_cache_size: usize, pub chunk_size: usize, pub exchange_initial_permits: usize, pub exchange_batched_permits: usize, pub exchange_concurrent_barriers: usize, pub exchange_concurrent_dispatchers: usize, pub dml_channel_initial_permits: usize, pub hash_agg_max_dirty_groups_heap_size: usize, pub memory_controller_threshold_aggressive: f64, pub memory_controller_threshold_graceful: f64, pub memory_controller_threshold_stable: f64, pub memory_controller_eviction_factor_aggressive: f64, pub memory_controller_eviction_factor_graceful: f64, pub memory_controller_eviction_factor_stable: f64, pub memory_controller_update_interval_ms: usize, pub memory_controller_sequence_tls_step: u64, pub memory_controller_sequence_tls_lag: u64, pub enable_arrangement_backfill: bool, pub high_join_amplification_threshold: usize, pub enable_actor_tokio_metrics: bool, pub exchange_connection_pool_size: Option<u16>, pub enable_auto_schema_change: bool, pub enable_shared_source: bool, pub switch_jdbc_pg_to_native: bool, pub max_barrier_batch_size: u32, pub hash_join_entry_state_max_rows: usize,
}
Expand description

The subsections [streaming.developer].

It is put at StreamingConfig::developer.

Fields§

§enable_executor_row_count: bool

Set to true to enable per-executor row count metrics. This will produce a lot of timeseries and might affect the prometheus performance. If you only need actor input and output rows data, see stream_actor_in_record_cnt and stream_actor_out_record_cnt instead.

§connector_message_buffer_size: usize

The capacity of the chunks in the channel that connects between ConnectorSource and SourceExecutor.

§unsafe_extreme_cache_size: usize

Limit number of the cached entries in an extreme aggregation call.

§chunk_size: usize

The maximum size of the chunk produced by executor at a time.

§exchange_initial_permits: usize

The initial permits that a channel holds, i.e., the maximum row count can be buffered in the channel.

§exchange_batched_permits: usize

The permits that are batched to add back, for reducing the backward AddPermits messages in remote exchange.

§exchange_concurrent_barriers: usize

The maximum number of concurrent barriers in an exchange channel.

§exchange_concurrent_dispatchers: usize

The concurrency for dispatching messages to different downstream jobs.

  • 1 means no concurrency, i.e., dispatch messages to downstream jobs one by one.
  • 0 means unlimited concurrency.
§dml_channel_initial_permits: usize

The initial permits for a dml channel, i.e., the maximum row count can be buffered in the channel.

§hash_agg_max_dirty_groups_heap_size: usize

The max heap size of dirty groups of HashAggExecutor.

§memory_controller_threshold_aggressive: f64§memory_controller_threshold_graceful: f64§memory_controller_threshold_stable: f64§memory_controller_eviction_factor_aggressive: f64§memory_controller_eviction_factor_graceful: f64§memory_controller_eviction_factor_stable: f64§memory_controller_update_interval_ms: usize§memory_controller_sequence_tls_step: u64§memory_controller_sequence_tls_lag: u64§enable_arrangement_backfill: bool

Enable arrangement backfill If false, the arrangement backfill will be disabled, even if session variable set. If true, it’s decided by session variable streaming_use_arrangement_backfill (default true)

§high_join_amplification_threshold: usize

If number of hash join matches exceeds this threshold number, it will be logged.

§enable_actor_tokio_metrics: bool

Actor tokio metrics is enabled if enable_actor_tokio_metrics is set or metrics level >= Debug.

§exchange_connection_pool_size: Option<u16>

The number of the connections for streaming remote exchange between two nodes. If not specified, the value of server.connection_pool_size will be used.

§enable_auto_schema_change: bool

A flag to allow disabling the auto schema change handling

§enable_shared_source: bool

Enable shared source If false, the shared source will be disabled, even if session variable set. If true, it’s decided by session variable streaming_use_shared_source (default true)

§switch_jdbc_pg_to_native: bool

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.

§max_barrier_batch_size: u32

The maximum number of consecutive barriers allowed in a message when sent between actors.

§hash_join_entry_state_max_rows: usize

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.

Implementations§

Trait Implementations§

source§

impl Clone for StreamingDeveloperConfig

source§

fn clone(&self) -> StreamingDeveloperConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for StreamingDeveloperConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for StreamingDeveloperConfig

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for StreamingDeveloperConfig

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for StreamingDeveloperConfig

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> FutureExt for T

§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
§

impl<T> IntoResult<T> for T

§

type Err = Infallible

§

fn into_result(self) -> Result<T, <T as IntoResult<T>>::Err>

source§

impl<M> MetricVecRelabelExt for M

source§

fn relabel( self, metric_level: MetricLevel, relabel_threshold: MetricLevel, ) -> RelabeledMetricVec<M>

source§

fn relabel_n( self, metric_level: MetricLevel, relabel_threshold: MetricLevel, relabel_num: usize, ) -> RelabeledMetricVec<M>

source§

fn relabel_debug_1( self, relabel_threshold: MetricLevel, ) -> RelabeledMetricVec<M>

Equivalent to RelabeledMetricVec::with_metric_level_relabel_n with metric_level set to MetricLevel::Debug and relabel_num set to 1.
source§

impl<T> Same for T

source§

type Output = T

Should always be Self
§

impl<T> Scope for T

§

fn with<F, R>(self, f: F) -> R
where Self: Sized, F: FnOnce(Self) -> R,

Scoped with ownership.
§

fn with_ref<F, R>(&self, f: F) -> R
where F: FnOnce(&Self) -> R,

Scoped with reference.
§

fn with_mut<F, R>(&mut self, f: F) -> R
where F: FnOnce(&mut Self) -> R,

Scoped with mutable reference.
source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

§

impl<T> DevConfig for T
where T: Send + Sync + 'static + Debug,

source§

impl<T> LruValue for T
where T: Send + Sync,

§

impl<T> StorageValue for T
where T: Value + Serialize + DeserializeOwned,

§

impl<T> Value for T
where T: Send + Sync + 'static,