go-redis/redis · error
redis: unable to parse addr param: %s
Error message
redis: unable to parse addr param: %s
What it means
Error "redis: unable to parse addr param: %s" thrown in go-redis/redis.
Source
Thrown at sentinel.go:512
o.UnstableResp3 = q.bool("unstable_resp3")
if q.err != nil {
return nil, q.err
}
if tmp := q.string("db"); tmp != "" {
db, err := strconv.Atoi(tmp)
if err != nil {
return nil, fmt.Errorf("redis: invalid database number: %w", err)
}
o.DB = db
}
addrs := q.strings("addr")
for _, addr := range addrs {
h, p, err := net.SplitHostPort(addr)
if err != nil || h == "" || p == "" {
return nil, fmt.Errorf("redis: unable to parse addr param: %s", addr)
}
o.SentinelAddrs = append(o.SentinelAddrs, net.JoinHostPort(h, p))
}
if o.TLSConfig != nil && q.has("skip_verify") {
o.TLSConfig.InsecureSkipVerify = q.bool("skip_verify")
}
// any parameters left?
if r := q.remaining(); len(r) > 0 {
return nil, fmt.Errorf("redis: unexpected option: %s", strings.Join(r, ", "))
}
return o, nil
}
// NewFailoverClient returns a Redis client that uses Redis SentinelView on GitHub (pinned to 36d97525cd)
Solutions
- Fix the addr query parameter format (host:port)
- URL-encode or remove the malformed addr parameter
When it happens
Trigger: Thrown at sentinel.go:512 when the library encounters an invalid state.
Common situations: Validate addr parameters at configuration load.
AI-assisted analysis of go-redis/redis@36d97525cd (2026-08-06).
Data as JSON: /data/errors/966cb75380921406.json.
Report an issue: GitHub.