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.idmz_internal.mz_cluster_replica_statuses.replica_idmz_internal.mz_cluster_replica_heartbeats.replica_idmz_internal.mz_cluster_replica_metrics.replica_idmz_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_catalogis part of Materialize’s stable interface, the change tomz_catalog.mz_cluster_replicas.idis a breaking change. If this change causes you friction, please let us know. -
Add the
ALTER OWNERcommand, 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
DROPorALTERan 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 NULLconstraints to tables ingested from PostgreSQL sources. -
Rename replica introspection views for consistency, and use the
_per_workername 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.