feat(education): complete Flyway migration and atomic submit

This commit is contained in:
2026-07-30 12:06:55 +08:00
parent ce02f8acb4
commit 79a5799502
228 changed files with 32551 additions and 1376 deletions

View File

@@ -28,8 +28,8 @@ yudao:
## 3. 发布步骤
1. 备份 Education 相关表,并记录应用版本与数据库版本
2. 执行尚未应用的正向 SQL不得执行 rollback SQL。
1. 备份 Education 相关表,并记录应用版本与 `flyway_schema_history`
2. 使用 Server 配置的 PostgreSQL Flyway 执行 migrate 和 validate检查版本、脚本、checksum 与 success不得手工应用 Education SQL 或执行 rollback SQL。
3. 先以 `catalog-read-enabled=false``practice-write-enabled=false` 部署应用。
4. 验证 System、Infra、Member 基础 smoke。
5. 仅对 Pilot 租户开启题库读取,完成 Scalar 只读 smoke。
@@ -65,7 +65,7 @@ yudao:
1. 设置 `catalog-read-enabled=false`,停止新的 Scalar 读取。
2. 保持 `enabled=true`,使已有会话、报告、错题和收藏仍可访问。
3. 如需冻结新写入,再设置 `practice-write-enabled=false`
4. 验证 Education MySQL 表行数和历史查询均未减少。
4. 验证 Education PostgreSQL 表行数和历史查询均未减少。
### 练习写入熔断
@@ -78,11 +78,11 @@ yudao:
### 应用回滚
1. 将应用回滚到上一已验证版本。
2. 保留所有 Education 表和数据,不执行 `sql/mysql/education/*-rollback.sql`
3. 若旧版本与新 schema 不兼容,保持功能关闭并前滚修复;不得通过删表恢复服务。
2. 保留所有 Education 表和数据,不执行 `flyway clean`、手工删除或任何 `*-rollback.sql`
3. 若旧版本与新 schema 不兼容,保持功能关闭并通过更高版本 Flyway migration 前滚修复;不得通过删表恢复服务。
4. 重新验证 Member 登录、System 租户和 Infra 日志功能。
> `*-rollback.sql` 是显式数据销毁工具,不是常规应用版本回滚步骤。
> 历史 `*-rollback.sql` 是数据销毁工具且不属于当前交付机制,不是常规应用版本回滚步骤。
## 6. 可观测性