mirror of
https://github.com/hibiken/asynq.git
synced 2026-04-26 07:25:56 +03:00
[GH-ISSUE #794] [FEATURE REQUEST] redis client version compatibility #1404
Labels
No labels
CLI
bug
designing
documentation
duplicate
enhancement
good first issue
good first issue
help wanted
idea
invalid
investigate
needs-more-info
performance
pr-welcome
pull-request
question
wontfix
work in progress
work in progress
work-around-available
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/asynq#1404
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Jeremy-Run on GitHub (Dec 6, 2023).
Original GitHub issue: https://github.com/hibiken/asynq/issues/794
Originally assigned to: @hibiken on GitHub.
Background:
Our project uses asynq-v0.24.0, which was recently upgraded to asynq-v0.24.1 .
The client generated by go-redis/v8 used in the project.
After upgrading, I found that this part of the code failed to execute:
The investigation revealed that the cause of this problem is that the UniversalClient of go-redis/v9 is different from the UniversalClient of go-redis/v8.
Suggestion:
Can you give us a hint as to what version of redis client should be uploaded? Or be compatible with several new versions of go-redis?
@kamikazechaser commented on GitHub (Dec 6, 2023):
I don't fully understand your question. Asynq uses go-redis/v9. Afaik, the tests pass and everything works fine.
However if you are reusing a go-redis connection for asynq, you need to set it up correctly.
@Jeremy-Run commented on GitHub (Dec 6, 2023):
@kamikazechaser
Thank you for your reply!
Let me improve my question:
In our project, this will report an error when using NewClient(r RedisConnOpt). The reason for the error is that r.MakeRedisClient() returns a go-redis/v8 client, which cannot be converted into redis.UniversalClient in go-redis/v9.
@kamikazechaser commented on GitHub (Dec 6, 2023):
Could you additionally post the code on your end to reproduce this issue.
@kamikazechaser commented on GitHub (Dec 6, 2023):
Possibly related to #790
@Jeremy-Run commented on GitHub (Dec 7, 2023):
This panic is inevitable.
This is my pseudo-code:
@kamikazechaser commented on GitHub (Dec 7, 2023):
Use go-redis/v9 with v0.24.1 and let me know if the issue still persists. I see that you are not using the
xmodule which is problematic right now.@Jeremy-Run commented on GitHub (Dec 7, 2023):
Yes, we can't go wrong with go-redis/v9.
What I want to ask is, does asynq need to support multiple go-redis versions?
@kamikazechaser commented on GitHub (Dec 7, 2023):
No. We want to stick with v9 only. You can track some changes on the sohail/go-update branch which removes the last mention of go-redis/v8 from the x module.
@Jeremy-Run commented on GitHub (Dec 7, 2023):
Well, thank you for your answer.