risingwave_stream::executor

Type Alias AppendOnlyGroupTopNExecutor

source
pub type AppendOnlyGroupTopNExecutor<K, S, const WITH_TIES: bool> = TopNExecutorWrapper<InnerAppendOnlyGroupTopNExecutor<K, S, WITH_TIES>>;
Expand description

If the input is append-only, AppendOnlyGroupTopNExecutor does not need to keep all the rows seen. As long as a record is no longer in the result set, it can be deleted.

Aliased Type§

struct AppendOnlyGroupTopNExecutor<K, S, const WITH_TIES: bool> {
    pub(super) input: Executor,
    pub(super) ctx: Arc<ActorContext>,
    pub(super) inner: InnerAppendOnlyGroupTopNExecutor<K, S, WITH_TIES>,
}

Fields§

§input: Executor§ctx: Arc<ActorContext>§inner: InnerAppendOnlyGroupTopNExecutor<K, S, WITH_TIES>

Implementations§

source§

impl<K: HashKey, S: StateStore, const WITH_TIES: bool> AppendOnlyGroupTopNExecutor<K, S, WITH_TIES>

source

pub fn new( input: Executor, ctx: ActorContextRef, schema: Schema, storage_key: Vec<ColumnOrder>, offset_and_limit: (usize, usize), order_by: Vec<ColumnOrder>, group_by: Vec<usize>, state_table: StateTable<S>, watermark_epoch: AtomicU64Ref, ) -> StreamResult<Self>