octavia/releasenotes/notes/fix-long-tasks-with-redis-keepalive-af18211334c14f54.yaml
Gregory Thiemonge 987d6a346f Add keepalive for redis-based taskflow boards
When using amphorav2+persistence, taskflow maintains the ownership of a
task using a TTL in redis for each job.

When a task is longer than expected, it is released in redis and another
controller can take it over while it is still running on the first
controller.

Add a keepalive mechanism in the worker to periodically reset the TTL
while the worker is still processing a job

Story 2009761
Task 44242

Change-Id: I6619ba117f7051fe44086389789bc6e2810fd23d
(cherry picked from commit f13c3ca6b8480792e2ab86a5413843b56eb453c6)
2022-01-24 08:34:15 +00:00

9 lines
358 B
YAML

---
fixes:
- |
Fix an issue with amphorav2 and persistence, some long tasks executed by a
controller might have been released in taskflow and rescheduled on another
controller. Octavia now ensures that a task is never released early by
using a keepalive mechanism to notify taskflow (and its redis backend) that
a job is still running.