Catalog-aware relational SQL and lake query mode - #145
Open
ajroetker wants to merge 1875 commits into
Open
Conversation
ajroetker
force-pushed
the
combine-pr-141-143-144
branch
3 times, most recently
from
June 26, 2026 00:31
31c5dcb to
bd5308e
Compare
ajroetker
force-pushed
the
combine-pr-141-143-144
branch
from
June 26, 2026 18:01
d274de9 to
5897ac2
Compare
# Conflicts: # zig/build.zig # zig/pkg/antfly/src/api/table_writes.zig # zig/pkg/antfly/src/common/mod.zig # zig/pkg/antfly/src/metadata/service.zig # zig/pkg/antfly/src/storage/db/db.zig
…bine-pr-141-143-144
# Conflicts: # zig/pkg/antfly/src/api/http_server.zig # zig/pkg/antfly/src/api/table_reads.zig # zig/pkg/antfly/src/api/table_writes.zig
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Combines #141, #143, and #144 into one integration branch, then extends that base into the current catalog-aware relational SQL and lake-query architecture. The branch now covers three connected design tracks: relational typed row execution, database/namespace/tablespace catalog semantics, and external lake row sources over the same row-plan API.
What This PR Adds
Relational SQL and typed row APIs
rows/query,rows/batch,rows/aggregate,rows/window,rows/join,rows/lateral, and reusable plan envelopes with CTE metadata and result-schema reporting.RETURNING, JSON/array/text/datetime/regex expressions, temporal DML, and schema migration metadata.Databases, namespaces, tablespaces, and auth
database / namespace / tableas the durable catalog model, with/tables/{table}remaining shorthand fordefault.public.{table}.database:name,namespace:db.ns,table:db.ns.table, andtablespace:name, preserving default-public compatibility where needed.current_database,search_path,SET/RESET/SHOW search_path, andDISCARD ALL, with session mutation modeled explicitly rather than hidden route rewriting.Lake query mode and serverless row sources
base_source, not a separate query system.Docs Updated
zig/RELATIONAL.mdis now the canonical relational-mode and SQL parity design, including the typed row-plan contract, constraint/migration semantics, read/write execution, lake materialization relationship, and implementation state.zig/DATABASES.mddefines the database/namespace/table mental model, defaulting rules, explicit catalog APIs, tablespace semantics, role-resource mapping, and cross-surface integration for REST, SQL, MCP, A2A, CLI, and auth.zig/LAKES.mddefines lake query mode as a relational row source over Parquet/Iceberg/Lance-style data, with serverless manifests, object-store reads, sidecars, cache isolation, explain/rebuild workflows, and remaining engine work.Remaining Work Called Out In The Docs
ColumnBatchhot path so lake scans do not rely on JSON adaptation for broad query execution.Testing
zig buildgit diff --checkEarlier focused gates on this branch also covered generated OpenAPI freshness, SQL/API parity fixtures, catalog/session SQL fixtures, explicit catalog route wiring, MCP/A2A catalog normalization, CLI surface compilation, and qualified role-resource checks.