Skip to content


SchemaKStream (of K keys) is...FIXME

Creating Instance

SchemaKStream takes the following to be created:

SchemaKStream is created when:

Source ExecutionStep

ExecutionStep<KStreamHolder<K>> sourceStep

SchemaKStream is given an ExecutionStep (of KStreamHolder<K>) when created.

The ExecutionStep is used for the following (high-level operators):


ExecutionStep<?> getSourceStep()

getSourceStep returns the source ExecutionStep.

getSourceStep is used when:


SchemaKStream<K> select(
  List<ColumnName> keyColumnNames,
  List<SelectExpression> selectExpressions,
  Stacker contextStacker,
  PlanBuildContext buildContext,
  FormatInfo valueFormat)

select creates a SchemaKStream with a StreamSelect execution step (with the source ExecutionStep).

select is used when:

  • AggregateNode is requested to selectRequiredInputColumns, selectRequiredOutputColumns
  • ProjectNode is requested to build a SchemaKStream

Resolving LogicalSchema (of ExecutionStep)

LogicalSchema resolveSchema(
  ExecutionStep<?> step)

resolveSchema creates a StepSchemaResolver to resolve the LogicalSchema of the given ExecutionStep.