[GH-ISSUE #1060] [BUG] Asynq shows warning: Could not move task from "asynq:{default}:active" to "asynq:{default}:archived" #2531

Open
opened 2026-03-15 20:48:17 +03:00 by kerem · 2 comments
Owner

Originally created by @silicon625 on GitHub (Jun 29, 2025).
Original GitHub issue: https://github.com/hibiken/asynq/issues/1060

Originally assigned to: @hibiken, @kamikazechaser on GitHub.

I am using asynq to manage requests that run CLI commands via exec.CommandContext.
To test failure handling, I intentionally configured a task with MaxRetry=0 and used an invalid binary path so the command would fail. Handle function will return error and let the task fail in this case.

After the task fails:
asynq logs the following warning once:

WARN: Could not move task id=... from "asynq:{default}:active" to "asynq:{default}:archived"; Will retry syncing

Inspector.GetTaskInfo("default", taskID) continues to report the task as active
However, asynq command line dashboard shows the task is correctly under archived, and data in Redis is the same.
Is there a way to fix this?

Originally created by @silicon625 on GitHub (Jun 29, 2025). Original GitHub issue: https://github.com/hibiken/asynq/issues/1060 Originally assigned to: @hibiken, @kamikazechaser on GitHub. I am using asynq to manage requests that run CLI commands via exec.CommandContext. To test failure handling, I intentionally configured a task with MaxRetry=0 and used an invalid binary path so the command would fail. Handle function will return error and let the task fail in this case. After the task fails: asynq logs the following warning once: ``` WARN: Could not move task id=... from "asynq:{default}:active" to "asynq:{default}:archived"; Will retry syncing ``` Inspector.GetTaskInfo("default", taskID) continues to report the task as active However, asynq command line dashboard shows the task is correctly under archived, and data in Redis is the same. Is there a way to fix this?
Author
Owner

@silicon625 commented on GitHub (Jul 1, 2025):

Mystery solved: I was running Redis 5.0.7 on my server, which does not support the Lua script used in rdb.go.
After building and switching to Redis 8.0.0, everything works as expected.

The README currently states that Asynq requires Redis ≥ 4.0, but in practice, some features require a more recent version.
I suggest updating the documentation to reflect that a newer Redis version.

<!-- gh-comment-id:3024019058 --> @silicon625 commented on GitHub (Jul 1, 2025): Mystery solved: I was running Redis 5.0.7 on my server, which does not support the Lua script used in rdb.go. After building and switching to Redis 8.0.0, everything works as expected. The README currently states that Asynq requires Redis ≥ 4.0, but in practice, some features require a more recent version. I suggest updating the documentation to reflect that a newer Redis version.
Author
Owner

@RychEmrycho commented on GitHub (Dec 11, 2025):

since you found this issue, maybe consider to raise a PR for the updated doc @silicon625 :)

<!-- gh-comment-id:3642910936 --> @RychEmrycho commented on GitHub (Dec 11, 2025): since you found this issue, maybe consider to raise a PR for the updated doc @silicon625 :)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/asynq#2531
No description provided.