{"record":{"id":"d19483d0a02ecb6f","repo":"redis/go-redis","slug":"redis-unable-to-parse-addr-param-s","errorCode":null,"errorMessage":"redis: unable to parse addr param: %s","messagePattern":"redis: unable to parse addr param: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"osscluster.go","lineNumber":431,"sourceCode":"\to.PipelineWriteBufferSize = q.int(\"pipeline_write_buffer_size\")\n\to.PoolTimeout = q.duration(\"pool_timeout\")\n\to.ConnMaxLifetime = q.duration(\"conn_max_lifetime\")\n\tif q.has(\"conn_max_lifetime_jitter\") {\n\t\to.ConnMaxLifetimeJitter = min(q.duration(\"conn_max_lifetime_jitter\"), o.ConnMaxLifetime)\n\t}\n\to.ConnMaxIdleTime = q.duration(\"conn_max_idle_time\")\n\to.FailingTimeoutSeconds = q.int(\"failing_timeout_seconds\")\n\n\tif q.err != nil {\n\t\treturn nil, q.err\n\t}\n\n\t// addr can be specified as many times as needed\n\taddrs := q.strings(\"addr\")\n\tfor _, addr := range addrs {\n\t\th, p, err := net.SplitHostPort(addr)\n\t\tif err != nil || h == \"\" || p == \"\" {\n\t\t\treturn nil, fmt.Errorf(\"redis: unable to parse addr param: %s\", addr)\n\t\t}\n\n\t\to.Addrs = append(o.Addrs, net.JoinHostPort(h, p))\n\t}\n\n\t// any parameters left?\n\tif r := q.remaining(); len(r) > 0 {\n\t\treturn nil, fmt.Errorf(\"redis: unexpected option: %s\", strings.Join(r, \", \"))\n\t}\n\n\treturn o, nil\n}\n\nfunc (opt *ClusterOptions) clientOptions() *Options {\n\t// Clone MaintNotificationsConfig to avoid sharing between cluster node clients\n\tvar maintNotificationsConfig *maintnotifications.Config\n\tif opt.MaintNotificationsConfig != nil {\n\t\tconfigClone := *opt.MaintNotificationsConfig","sourceCodeStart":413,"sourceCodeEnd":449,"githubUrl":"https://github.com/redis/go-redis/blob/c5cad058c72f58370553b48566302303cf8a2e89/osscluster.go#L413-L449","documentation":"Error \"redis: unable to parse addr param: %s\" thrown in redis/go-redis.","triggerScenarios":"Thrown at osscluster.go:431 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"c5cad058c72f58370553b48566302303cf8a2e89","analyzedAt":"2026-09-01T06:50:53.388Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}