From 21c19a921844a59d5ca6623756f7fc3e5d99a092 Mon Sep 17 00:00:00 2001 From: karl Date: Wed, 22 Nov 2023 10:28:00 +0800 Subject: [PATCH] fix: CANNOT connet to Redis with special password #2893 (#2894) Co-authored-by: karlhjm --- internal/job/job.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/job/job.go b/internal/job/job.go index 58756f4ec..fdfb59e9f 100644 --- a/internal/job/job.go +++ b/internal/job/job.go @@ -21,6 +21,7 @@ import ( "encoding/json" "errors" "fmt" + "net/url" "reflect" "strings" "time" @@ -64,9 +65,9 @@ func New(cfg *Config, queue Queue) (*Job, error) { } server, err := machinery.NewServer(&machineryv1config.Config{ - Broker: fmt.Sprintf("redis://%s@%s/%d", cfg.Password, strings.Join(cfg.Addrs, ","), cfg.BrokerDB), + Broker: fmt.Sprintf("redis://%s@%s/%d", url.QueryEscape(cfg.Password), strings.Join(cfg.Addrs, ","), cfg.BrokerDB), DefaultQueue: queue.String(), - ResultBackend: fmt.Sprintf("redis://%s@%s/%d", cfg.Password, strings.Join(cfg.Addrs, ","), cfg.BackendDB), + ResultBackend: fmt.Sprintf("redis://%s@%s/%d", url.QueryEscape(cfg.Password), strings.Join(cfg.Addrs, ","), cfg.BackendDB), ResultsExpireIn: DefaultResultsExpireIn, Redis: &machineryv1config.RedisConfig{ MasterName: cfg.MasterName,