Skip to main content

Module streaming_table_ddl

Module streaming_table_ddl 

Source
Expand description

CREATE STREAMING TABLE <name> AS <select> — the SQL front door for a continuous streaming job (Phase 60 “SQL DDL for the other two engines”).

A SQL-only client (Flight SQL / JDBC / BI / the workbench) declares a continuous job as a table-producing statement, the way Databricks Delta Live Tables and Flink CREATE TABLE … AS do. The body must lower to a continuous plan through the same front door as every other streaming query (crate::streaming_window_plan::compile_streaming_window_sql), so an unsupported body fails at the planner (“cannot lower to a continuous plan”), not at a bespoke matcher.

Parsing and validation are engine-local and unit-tested here. Executing the job — placing the operator on the streaming coordinator/executors — needs a running coordinator, so the pure crate::SqlEngine surfaces a clear “requires a streaming coordinator” error and a cluster-attached session submits the validated plan through the continuous-stream registration API.

Structs§

StreamingTableDdl
A parsed CREATE [OR REPLACE] STREAMING TABLE <name> AS <query> statement.

Functions§

parse_create_streaming_table
Parse a CREATE [OR REPLACE] STREAMING TABLE <name> AS <query> statement, or None if sql is not one.