relational/

directory
v0.0.0-...-2e4c5eb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 12, 2026 License: Apache-2.0

Directories

Path Synopsis
api
Package api mirrors Java's fdb-relational-api module.
Package api mirrors Java's fdb-relational-api module.
ddl
Package ddl defines the DDL action interfaces for the relational layer.
Package ddl defines the DDL action interfaces for the relational layer.
conformance
coveringleaf
Package coveringleaf holds the schema and queries shared by the two tests that probe a COVERING index leaf from opposite sides — the planner-side shape pin in package embedded_test and the column-metadata pin in package sqldriver_test.
Package coveringleaf holds the schema and queries shared by the two tests that probe a COVERING index leaf from opposite sides — the planner-side shape pin in package embedded_test and the column-metadata pin in package sqldriver_test.
explaindiff
Package explaindiff renders the PHYSICAL plan shape of every query in the yamsql conformance corpus into a stable, diffable text baseline, and diffs two such baselines entry-by-entry.
Package explaindiff renders the PHYSICAL plan shape of every query in the yamsql conformance corpus into a stable, diffable text baseline, and diffs two such baselines entry-by-entry.
factory
Package factory is the producer half of the RFC-201 §5 generation factory: generate → execute → bless-or-file → dedup, with cmd/factory-run driving it and pkg/relational/conformance/factorycorpus owning the committed output.
Package factory is the producer half of the RFC-201 §5 generation factory: generate → execute → bless-or-file → dedup, with cmd/factory-run driving it and pkg/relational/conformance/factorycorpus owning the committed output.
factorycorpus
Package factorycorpus is the home of the RFC-201 §5 generation factory's COMMITTED output: machine-generated, oracle-blessed yamsql scenarios that live in the repository as permanent suite content.
Package factorycorpus is the home of the RFC-201 §5 generation factory's COMMITTED output: machine-generated, oracle-blessed yamsql scenarios that live in the repository as permanent suite content.
javacorpus
Package javacorpus executes the vendored Java `.yamsql` acceptance corpus (parsed by the sibling javayamsql package) against the Go SQL engine.
Package javacorpus executes the vendored Java `.yamsql` acceptance corpus (parsed by the sibling javayamsql package) against the Go SQL engine.
javayamsql
Package javayamsql parses Apple's `.yamsql` acceptance-test format — the multi-document YAML dialect driving the Java record layer's yaml-tests suite.
Package javayamsql parses Apple's `.yamsql` acceptance-test format — the multi-document YAML dialect driving the Java record layer's yaml-tests suite.
memoinvariant
Package memoinvariant is RFC-184 W4: a generative memo-invariant harness.
Package memoinvariant is RFC-184 W4: a generative memo-invariant harness.
plandiff
Package plandiff is the Phase 4.-1 plan-equivalence harness from RFC-022 §4.-1.
Package plandiff is the Phase 4.-1 plan-equivalence harness from RFC-022 §4.-1.
rowdiff
Package rowdiff is the RFC-182 generative row-soundness differential harness: seeded random (schema, data, query) cases executed through the full production path (sqldriver → Cascades → executor → real FDB), rows diffed against Oracle M — a brute-force in-memory full-scan evaluation over the generator's own authoritative row set, reusing the engine's predicate evaluation (predicates.Comparison.Eval) so the planner is the only component removed.
Package rowdiff is the RFC-182 generative row-soundness differential harness: seeded random (schema, data, query) cases executed through the full production path (sqldriver → Cascades → executor → real FDB), rows diffed against Oracle M — a brute-force in-memory full-scan evaluation over the generator's own authoritative row set, reusing the engine's predicate evaluation (predicates.Comparison.Eval) so the planner is the only component removed.
yamsql
Package yamsql is a SQL-level conformance harness for the Go SQL driver.
Package yamsql is a SQL-level conformance harness for the Go SQL driver.
core
catalog
Package catalog contains concrete implementations of the api.StoreCatalog / api.SchemaTemplateCatalog / api.Transaction interfaces.
Package catalog contains concrete implementations of the api.StoreCatalog / api.SchemaTemplateCatalog / api.Transaction interfaces.
ddl
embedded
Package embedded implements the embedded (in-process) SQL execution engine for the FoundationDB relational layer.
Package embedded implements the embedded (in-process) SQL execution engine for the FoundationDB relational layer.
fleet
Package fleet drives fan-out maintenance across every tenant schema in a relational database: rebinding a fleet onto a new schema-template version, and building the indexes that rebind leaves unbuilt.
Package fleet drives fan-out maintenance across every tenant schema in a relational database: rebinding a fleet onto a new schema-template version, and building the indexes that rebind leaves unbuilt.
functions
Package functions holds SQL-value operations that don't need connection/session state: checked integer arithmetic, numeric + bitwise operators with SQL semantics, type-coercion helpers used by scalar-function arguments, and (in future PRs) the scalar function dispatcher + protoreflect <-> driver.Value marshaling.
Package functions holds SQL-value operations that don't need connection/session state: checked integer arithmetic, numeric + bitwise operators with SQL semantics, type-coercion helpers used by scalar-function arguments, and (in future PRs) the scalar function dispatcher + protoreflect <-> driver.Value marshaling.
keyspace
Package keyspace defines the relational-layer FDB key structure.
Package keyspace defines the relational-layer FDB key structure.
metadata
Package metadata provides concrete bridge implementations of the api.* metadata interfaces backed by *recordlayer.RecordMetaData.
Package metadata provides concrete bridge implementations of the api.* metadata interfaces backed by *recordlayer.RecordMetaData.
parser
Package parser houses the generated ANTLR4 lexer and parser for the Relational SQL dialect, plus the thin Go wrapper that wires them into a ParseTree suitable for consumption by the semantic analyzer.
Package parser houses the generated ANTLR4 lexer and parser for the Relational SQL dialect, plus the thin Go wrapper that wires them into a ParseTree suitable for consumption by the semantic analyzer.
parser/grammar
Package grammar is a go-sentinel (empty) package whose only job is to anchor the *.g4 grammar files in the Go module tree so they travel with builds and gazelle doesn't delete the directory.
Package grammar is a go-sentinel (empty) package whose only job is to anchor the *.g4 grammar files in the Go module tree so they travel with builds and gazelle doesn't delete the directory.
query
Package query defines the planner/plan seam between the SQL frontend (database/sql driver, future gRPC server, REPL) and the SQL execution engine.
Package query defines the planner/plan seam between the SQL frontend (database/sql driver, future gRPC server, REPL) and the SQL execution engine.
query/ddl
Package ddl holds the materialized-view index generator — the Go port of Java's MaterializedViewIndexGenerator (RFC-202).
Package ddl holds the materialized-view index generator — the Go port of Java's MaterializedViewIndexGenerator (RFC-202).
query/expr
Package expr is the parse-tree → values.Value resolver.
Package expr is the parse-tree → values.Value resolver.
query/logical
Package logical holds the Phase 3 (TODO.md §"Phase 3 — Semantic analysis") logical-operator hierarchy.
Package logical holds the Phase 3 (TODO.md §"Phase 3 — Semantic analysis") logical-operator hierarchy.
query/semantic
Package semantic is the Go port of Java's `com.apple.foundationdb.relational.recordlayer.query.SemanticAnalyzer` plus related Identifier / Expression / reference-resolution helpers.
Package semantic is the Go port of Java's `com.apple.foundationdb.relational.recordlayer.query.SemanticAnalyzer` plus related Identifier / Expression / reference-resolution helpers.
query/semantic/rlcatalog
Package rlcatalog adapts the Record Layer's `RecordMetaData` into the `semantic.Catalog` interface.
Package rlcatalog adapts the Record Layer's `RecordMetaData` into the `semantic.Catalog` interface.
rowstruct
Package rowstruct materializes a STRUCT column value for SQL clients: the Go analogue of Java's RowStruct family, where a struct column read off a record surfaces as a RelationalStruct rather than as the raw protobuf message.
Package rowstruct materializes a STRUCT column value for SQL clients: the Go analogue of Java's RowStruct family, where a struct column read off a record surfaces as a RelationalStruct rather than as the raw protobuf message.
session
Package session holds per-connection resource state for the relational SQL engine.
Package session holds per-connection resource state for the relational SQL engine.
Package sqldriver implements a database/sql driver for the FoundationDB Record Layer relational (SQL) layer.
Package sqldriver implements a database/sql driver for the FoundationDB Record Layer relational (SQL) layer.
Package txbudgetcensus finds test transactions that carry an unstated assumption about FDB's five-second MVCC window.
Package txbudgetcensus finds test transactions that carry an unstated assumption about FDB's five-second MVCC window.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL