Module mz_adapter::catalog::builtin
source · Expand description
Built-in catalog items.
Builtins exist in the mz_catalog
ambient schema. They are automatically
installed into the catalog when it is opened. Their definitions are not
persisted in the catalog, but hardcoded in this module. This makes it easy
to add new builtins, or change the definition of existing builtins, in new
versions of Materialize.
Builtin’s names, columns, and types are part of the stable API of Materialize. Be careful to maintain backwards compatibility when changing definitions of existing builtins!
More information about builtin system tables and types can be found in https://materialize.com/docs/sql/system-catalog/.
Modules
Structs
- Note: When creating a built-in index, it’s usually best to choose a key that has only one component. For example, if you created an index
ON mz_internal.mz_object_lifetimes (id, object_type)
, then this index couldn’t be used for a lookup forWHERE object_type = ...
, and neither for joins keyed on justid
. See https://materialize.com/docs/transform-data/optimization/#matching-multi-column-indexes-to-multi-column-where-clauses
Enums
Constants
Statics
- List of all builtin objects sorted topologically by dependency.
- PostgreSQL-specific metadata about types that doesn’t make sense to expose in the
mz_types
table as part of our public, stable API.
Traits
- Uniquely identifies the definition of a builtin object.