feat: add durable schedule management and multi-node crash recovery
This commit is contained in:
@@ -13,11 +13,17 @@ type Schedule struct {
|
||||
core.Record
|
||||
// Name 可读名称,唯一性范围由对应数据表约束。
|
||||
Name string `db:"name"`
|
||||
// QueueID 计划终身绑定的队列;旧结构人工行可为空,不允许参与扫描。
|
||||
QueueID *core.ID `db:"queue_id"`
|
||||
// ProcessingVersion 当前积压处理所用版本;发布新版本不覆盖旧进度。
|
||||
ProcessingVersion uint64 `db:"processing_version"`
|
||||
// CheckAt 下次允许扫描的 UTC 时间;为空表示当前没有扫描工作。
|
||||
CheckAt *time.Time `db:"check_at"`
|
||||
// CurrentVersion 当前生效的计划版本号,发布时与版本记录原子更新。
|
||||
CurrentVersion uint64 `db:"current_version"`
|
||||
// Paused 暂停标记;停止新的受控工作,不表示在途请求已停止。
|
||||
Paused bool `db:"paused"`
|
||||
// NextFireAt 下一计划触发时间;没有后续触发时为空。
|
||||
// NextFireAt 下一原计划触发时间;版本刚切换尚待计算或已经结束时为空,需结合 CheckAt 判断。
|
||||
NextFireAt *time.Time `db:"next_fire_at"`
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user