EnsureRunIngestionSchedule
Purpose
Создает или обновляет Temporal schedule для периодического запуска RunIngestionWorkflow.
Код: internal/worker/activities/run_ingestion_schedule.go
Input / Output
Input (models.EnsureRunIngestionScheduleInput):
- schedule_id, cron, timezone, task_queue
- data_source_id
- name (optional)
- metadata (optional)
- paused
- preserve_paused_state (optional)
Output (models.EnsureRunIngestionScheduleResult):
- schedule_id
- created, updated, paused
External Dependencies
- Temporal Schedule API (через SDK client)
Idempotency
- Если schedule не существует: create.
- Если существует: deterministic update.
- При
preserve_paused_state=trueactivity сохраняет текущий paused state существующего schedule.
Error Taxonomy
run ingestion schedule validation failed: missing data_source_id- ошибки подключения Temporal client
describe/create/update scheduleошибки
Callers
Observability
- Диагностика через статус workflow run,
temporal schedule list/describeи worker startup logs.