@@ -5545,6 +5545,28 @@ pub static MZ_LICENSE_KEYS: LazyLock<BuiltinTable> = LazyLock::new(|| BuiltinTab
55455545 access: vec![PUBLIC_SELECT],
55465546});
55475547
5548+ pub static MZ_REPLACEMENTS: LazyLock<BuiltinTable> = LazyLock::new(|| BuiltinTable {
5549+ name: "mz_replacements",
5550+ schema: MZ_INTERNAL_SCHEMA,
5551+ oid: oid::TABLE_MZ_REPLACEMENTS_OID,
5552+ desc: RelationDesc::builder()
5553+ .with_column("id", SqlScalarType::String.nullable(false))
5554+ .with_column("target_id", SqlScalarType::String.nullable(false))
5555+ .finish(),
5556+ column_comments: BTreeMap::from_iter([
5557+ (
5558+ "id",
5559+ "The ID of the replacement object. Corresponds to `mz_objects.id`.",
5560+ ),
5561+ (
5562+ "target_id",
5563+ "The ID of the replacement target. Corresponds to `mz_objects.id`.",
5564+ ),
5565+ ]),
5566+ is_retained_metrics_object: false,
5567+ access: vec![PUBLIC_SELECT],
5568+ });
5569+
55485570// These will be replaced with per-replica tables once source/sink multiplexing on
55495571// a single cluster is supported.
55505572pub static MZ_SOURCE_STATISTICS_RAW: LazyLock<BuiltinSource> = LazyLock::new(|| BuiltinSource {
@@ -11105,25 +11127,34 @@ pub static MZ_SHOW_MATERIALIZED_VIEWS: LazyLock<BuiltinView> = LazyLock::new(||
1110511127 .with_column("schema_id", SqlScalarType::String.nullable(false))
1110611128 .with_column("cluster_id", SqlScalarType::String.nullable(false))
1110711129 .with_column("comment", SqlScalarType::String.nullable(false))
11130+ .with_column("replacing", SqlScalarType::String.nullable(true))
1110811131 .finish(),
1110911132 column_comments: BTreeMap::new(),
1111011133 sql: "
11111- WITH comments AS (
11112- SELECT id, comment
11113- FROM mz_internal.mz_comments
11114- WHERE object_type = 'materialized-view' AND object_sub_id IS NULL
11115- )
11134+ WITH
11135+ comments AS (
11136+ SELECT id, comment
11137+ FROM mz_internal.mz_comments
11138+ WHERE object_type = 'materialized-view' AND object_sub_id IS NULL
11139+ ),
11140+ replacements AS (
11141+ SELECT r.id, mv.name AS target_name
11142+ FROM mz_internal.mz_replacements r
11143+ JOIN mz_materialized_views mv ON r.target_id = mv.id
11144+ )
1111611145SELECT
1111711146 mviews.id as id,
1111811147 mviews.name,
1111911148 clusters.name AS cluster,
1112011149 schema_id,
1112111150 cluster_id,
11122- COALESCE(comments.comment, '') as comment
11151+ COALESCE(comments.comment, '') as comment,
11152+ replacements.target_name as replacing
1112311153FROM
1112411154 mz_catalog.mz_materialized_views AS mviews
1112511155 JOIN mz_catalog.mz_clusters AS clusters ON clusters.id = mviews.cluster_id
11126- LEFT JOIN comments ON mviews.id = comments.id",
11156+ LEFT JOIN comments ON mviews.id = comments.id
11157+ LEFT JOIN replacements ON mviews.id = replacements.id",
1112711158 access: vec![PUBLIC_SELECT],
1112811159});
1112911160
@@ -13839,6 +13870,7 @@ pub static BUILTINS_STATIC: LazyLock<Vec<Builtin<NameReference>>> = LazyLock::ne
1383913870 Builtin::Table(&MZ_NETWORK_POLICIES),
1384013871 Builtin::Table(&MZ_NETWORK_POLICY_RULES),
1384113872 Builtin::Table(&MZ_LICENSE_KEYS),
13873+ Builtin::Table(&MZ_REPLACEMENTS),
1384213874 Builtin::View(&MZ_RELATIONS),
1384313875 Builtin::View(&MZ_OBJECT_OID_ALIAS),
1384413876 Builtin::View(&MZ_OBJECTS),
0 commit comments