清理 nova 实例表中的 ‘scheduled_at’ 列¶
https://blueprints.launchpad.net/nova/+spec/cleanup-scheduled-at
‘scheduled_at’ 字段是 Nova 实例表的一部分。目前,Nova 调度器不再更新 ‘scheduled_at’ 字段,而是使用 ‘launched_at’ 字段。‘scheduled_at’ 列现在是多余的,应该作为数据库清理的一部分被移除。
问题描述¶
nova 实例表中的 ‘scheduled_at’ 列现在是多余的。该字段曾经被调度器用来表示实例调度的时刻。移除它的提交是: https://review.openstack.org/#/c/143725/
现在由于所有的基本 VM 生命周期操作都通过调度器进行,‘launched_at’ 字段足以满足上述场景。
这是一项 nova 数据库清理工作,旨在移除实例表中的 ‘scheduled_at’ 列并确保向后兼容性。
用例¶
这是一项对实例表进行的清理工作。
项目优先级¶
这是一项重构工作,旨在使 nova 代码更简洁。
提议的变更¶
预计的更改将发生在以下位置: * 移除 ‘scheduled_at’ 字段的 sqlalchemy 初始化
移除所有涉及此字段的单元测试。
确保 NovaObjects 适应此更改,以处理迁移相关问题。
备选方案¶
继续在 nova 中保留休眠代码。
数据模型影响¶
由于目前没有代码更新它,因此可以从实例表中删除 ‘scheduled_at’ 列。
REST API 影响¶
无
安全影响¶
无。
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
无
其他部署者影响¶
无
开发人员影响¶
无
实现¶
负责人¶
主要负责人
Sudipta Biswas sbiswas7
工作项¶
从 Sqlalchemy 模型中删除 ‘scheduled_at’ 列。
添加迁移以从实例表中删除该列。
更改实例对象模块以解决迁移相关问题。
依赖项¶
无
测试¶
这些更改将通过现有的 CI 进行测试。
文档影响¶
无