OpenMetadata/bootstrap/sql/migrations/native/1.11.9/mysql/schemaChanges.sql

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

12 lines
881 B
MySQL
Raw Permalink Normal View History

-- Change entity_extension_time_series.timestamp from VIRTUAL to STORED for performance.
-- STORED columns are materialized on disk, making unique constraint checks and range
-- queries on timestamp significantly faster (especially for bulk pipeline status upserts).
-- MySQL does not allow ALTER from VIRTUAL to STORED directly, so we drop and re-add.
-- NOTE: This will lock the table for a full rebuild. On large deployments with millions
-- of rows in entity_extension_time_series, plan for downtime accordingly.
ALTER TABLE entity_extension_time_series
DROP INDEX entity_extension_time_series_constraint,
DROP COLUMN `timestamp`,
ADD COLUMN `timestamp` bigint unsigned GENERATED ALWAYS AS (json_unquote(json_extract(`json`, _utf8mb4'$.timestamp'))) STORED NOT NULL,
ADD UNIQUE KEY `entity_extension_time_series_constraint` (`entityFQNHash`, `extension`, `timestamp`);