Materialize v0.49
v0.49.0
SQL
-
Change the type of the following system catalog replica ID columns from integer to string:
mz_catalog.mz_cluster_replicas.id
mz_internal.mz_cluster_replica_statuses.replica_id
mz_internal.mz_cluster_replica_heartbeats.replica_id
mz_internal.mz_cluster_replica_metrics.replica_id
mz_internal.mz_cluster_replica_frontiers.replica_id
This is part of the work to introduce system replicas, which Materialize will use for verification and testing purposes and which will not affect user billing or system limits (#11579). Note that, since
mz_catalog
is part of Materialize’s stable interface, the change tomz_catalog.mz_cluster_replicas.id
is a breaking change. If this change causes you friction, please let us know. -
Add the
ALTER OWNER
command, which updates the owner of an object. This is part of the work to enable Role-based access control (RBAC)(#11579). -
Add permission checks based on object ownership. To
DROP
orALTER
an object, the executing role must now be an owner of that object or a superuser. This is part of the work to enable Role-based access control (RBAC)(#11579). -
Apply
PRIMARY KEY
,UNIQUE
, andNOT NULL
constraints to tables ingested from PostgreSQL sources. -
Rename replica introspection views for consistency, and use the
_per_worker
name suffix for per-worker introspection views. -
Automatically restart failed SSH tunnels to improve the reliability of SSH-tunneled Kafka sources.
Bug fixes and other improvements
-
Fix a correctness bug in Top K processing for monotonic, append-only sources.
-
Fix a bug that prevented superusers from altering an object owner if they weren’t a member of the new owner’s role.
-
Fix a bug that would cause PostgreSQL sources to error when columns are added to upstream tables. Note that dropping columns from upstream tables that Materialize ingests still results in error.