-
[OPIK-6186] [BE] feat: add experiment and dataset migration skip columns to workspaces (#6774)
发布于
2026-05-20 15:34:46 +00:00 - [OPIK-6186] [BE] feat: add experiment and dataset migration skip columns to workspaces
-
Migration 000073: add experiment_project_migration_skipped_at /
experiment_project_migration_skip_reason alongside the existing
migration_skipped_at / migration_skipped_reason columns; copy any
existing data into the new columns; keep old columns alive for
backward compat during rolling deployment. -
Migration 000074: add dataset_project_migration_skipped_at /
dataset_project_migration_skip_reason columns (no legacy columns to
mirror; these are net-new for the upcoming dataset migration job). -
WorkspacesDAO / WorkspacesService: rename markMigrationSkipped /
findMigrationSkippedWorkspaceIds / countMigrationSkipped to their
experiment_project_migration_* equivalents; all UPDATE and INSERT
statements dual-write to both old and new columns so old pods still
reading migration_skipped_at see current data during the deployment
window; add parallel dataset_project_migration_* methods. -
Workspace record: replace generic migrationSkippedAt/Reason with
experimentProjectMigrationSkippedAt/Reason +
datasetProjectMigrationSkippedAt/Reason. -
ExperimentProjectMigrationService + ExperimentProjectMigrationJobTest:
update two call sites each to use the renamed service methods.
-
fix: read experiment migration skip status from legacy column during rolling deployment
-
fix: guard UPDATE on legacy column; add legacy fields to Workspace record
-
chore: remove dataset migration methods from prep PR — belong in OPIK-6186
-
chore(test): fix spotless formatting in ExperimentProjectMigrationJobTest
-
[OPIK-6186] [BE] fix: resolve merge conflict and update renamed service calls
- Resolve unresolved merge marker in ExperimentProjectMigrationService
by keeping main's markMigrationSkipped helper (the deleted-project
trap was superseded by OPIK-6579's "assign to Default" behavior). - Update the helper's call site to use the renamed
workspacesService.markExperimentProjectMigrationSkipped. - Fix two test references that the OPIK-6186 rename commit missed.
- [OPIK-6186] [BE] refactor: rename migration_skipped_at/_reason in place
Per review feedback, replace the dual-write/legacy-column rolling-deploy dance
with an in-place rename of the workspaces.migration_skipped_at/_reason columns
to experiment_project_migration_skipped_at/_skip_reason (plus the supporting
index). The migration job is idle outside of migration runs, so there are no
concurrent writers to worry about during the rolling deployment window.- 000073: now CHANGE COLUMN + RENAME INDEX (VARCHAR(255) preserved)
- 000074: dataset_project_migration_skip_reason widened to VARCHAR(255) to
stay symmetric with the renamed experiment column - WorkspacesDAO: single-column writes/reads on the renamed columns
- Workspace record: legacy migrationSkippedAt/Reason fields removed
-
Update and rename 000074_add_dataset_migration_columns_to_workspaces.sql to 000075_add_dataset_migration_columns_to_workspaces.sql
-
Update and rename 000073_rename_experiment_migration_columns_in_workspaces.sql to 000074_rename_experiment_migration_columns_in_workspaces.sql
下载附件