2026-05-03 02:02:39 +08:00
|
|
|
ALTER TABLE generation_tasks
|
2026-05-05 20:48:14 +08:00
|
|
|
ADD COLUMN IF NOT EXISTS lease_token VARCHAR(64),
|
|
|
|
|
ADD COLUMN IF NOT EXISTS lease_owner VARCHAR(128),
|
|
|
|
|
ADD COLUMN IF NOT EXISTS lease_expires_at TIMESTAMPTZ,
|
|
|
|
|
ADD COLUMN IF NOT EXISTS attempt_count INT NOT NULL DEFAULT 0,
|
|
|
|
|
ADD COLUMN IF NOT EXISTS last_heartbeat_at TIMESTAMPTZ;
|
2026-05-03 02:02:39 +08:00
|
|
|
|
2026-05-05 20:48:14 +08:00
|
|
|
CREATE INDEX IF NOT EXISTS idx_generation_tasks_running_lease
|
2026-05-03 02:02:39 +08:00
|
|
|
ON generation_tasks(lease_expires_at, id)
|
|
|
|
|
WHERE status = 'running';
|
|
|
|
|
|
2026-05-05 20:48:14 +08:00
|
|
|
CREATE INDEX IF NOT EXISTS idx_generation_tasks_queued_stale
|
2026-05-03 02:02:39 +08:00
|
|
|
ON generation_tasks(updated_at, id)
|
|
|
|
|
WHERE status = 'queued';
|