Skip to content


Creating Instance

DataSourceNode takes the following to be created:

DataSourceNode is created when:

  • LogicalPlanner is requested to build a join or a non-join node


DataSourceNode can be given a SchemaKStreamFactory when created. Unless given, DataSourceNode uses SchemaKSourceFactory.


Note the difference in type names, i.e. SchemaKStreamFactory (with Stream inside) vs SchemaKSourceFactory (with Source instead).

The SchemaKStreamFactory is used to create a SchemaKStream when DataSourceNode is requested to build one.

Building SchemaKStream

SchemaKStream<?> buildStream(
  PlanBuildContext buildContext)

buildStream requests the given PlanBuildContext to buildNodeContext.

In the end, requests the SchemaKStreamFactory for a SchemaKStream.

buildStream is part of the PlanNode abstraction.

Back to top