t8y2/dbx · error
invalid Hive browserResponsePort %q: expected 0-65535
Error message
invalid Hive browserResponsePort %q: expected 0-65535
What it means
The browserresponseport connection parameter is parsed as an integer and must be within 0-65535. If strconv.Atoi fails or the value is out of range, the driver returns this error while applying connection parameters. Port 0 is allowed (disabled/auto semantics).
Source
Thrown at agents/drivers/hive-go/config.go:570
if hasParameter(values, "ssl") {
config.TLSExplicit = true
}
config.ZooKeeperAuthScheme = parameter(values, "zookeeperauthscheme")
config.ZooKeeperAuth = parameter(values, "zookeeperauth")
config.HTTPHeaders = prefixedParameters(values, "http.header.")
config.HTTPCookies = prefixedParameters(values, "http.cookie.")
config.RequestTracking = parameterBool(values, "requesttrack")
if value, exists := firstParameter(values, "cookieauth"); exists {
config.CookieAuth = !strings.EqualFold(value, "false")
}
config.CookieName = firstNonEmpty(parameter(values, "cookiename"), defaultCookieName)
config.JWT = firstNonEmpty(parameter(values, "jwt"), os.Getenv("JWT"))
config.BrowserToken = firstNonEmpty(parameter(values, "browsertoken"), parameter(values, "token"))
config.BrowserClientID = parameter(values, "browserclientidentifier")
if value := parameter(values, "browserresponseport"); value != "" {
parsed, err := strconv.Atoi(value)
if err != nil || parsed < 0 || parsed > 65535 {
return fmt.Errorf("invalid Hive browserResponsePort %q: expected 0-65535", value)
}
config.BrowserResponsePort = parsed
}
if value := parameter(values, "browserresponsetimeout"); value != "" {
parsed, err := strconv.ParseInt(value, 10, 64)
if err != nil || parsed <= 0 {
return fmt.Errorf("invalid Hive browserResponseTimeout %q: expected positive seconds", value)
}
config.BrowserResponseTimeout = time.Duration(parsed) * time.Second
}
config.BrowserDisableSSLCheck = parameterBool(values, "browserdisablesslcheck")
if strings.EqualFold(config.Auth, "JWT") && config.JWT == "" {
return errors.New("Hive JWT authentication requires jwt or the JWT environment variable")
}
if value := parameter(values, "fetchsize"); value != "" {
parsed, err := strconv.Atoi(value)
if err != nil || parsed <= 0 {
return fmt.Errorf("invalid Hive fetchSize %q: expected a positive integer", value)View on GitHub (pinned to c0390bff16)
Solutions
- Set browserResponsePort to an integer between 0 and 65535
- Remove the parameter entirely if a browser response port is not needed
- Check the wrapped DSN for stray characters around the number
- Use 0 explicitly to disable the browser response listener
Example fix
// before dsn := "...;browserResponsePort=NONE" // after dsn := "...;browserResponsePort=0"
Defensive patterns
Strategy: validation
Validate before calling
if v := params.Get("browserResponsePort"); v != "" {
p, err := strconv.Atoi(v)
if err != nil || p < 0 || p > 65535 {
return fmt.Errorf("browserResponsePort %q must be 0-65535", v)
}
} Try / catch
if err := applyParams(values); err != nil {
if strings.Contains(err.Error(), "browserResponsePort") {
return fmt.Errorf("fix browserResponsePort: %w", err)
}
return err
} Prevention
- Only pass decimal integers 0-65535 for browserResponsePort
- Use 0 to disable the browser response listener
- Keep DSN params free of units or placeholders
When it happens
Trigger: Connection string containing browserResponsePort=abc, browserResponsePort=99999, or browserResponsePort=-1.
Common situations: Copy-pasting a callback URL where only the path was intended; typos like 655536; leaving a placeholder 'browserResponsePort=PORT' in a templated DSN.
Related errors
- invalid Hive browserResponsePort %q: expected 0-65535
- invalid Hive port: %w
- invalid Hive endpoint %q: %w
- invalid Hive endpoint %q
- invalid Hive browserResponseTimeout %q: expected positive se
AI-assisted analysis of t8y2/dbx@c0390bff16 (2026-09-05).
Data as JSON: /api/errors/4abf87a13b1b23ff.
Report an issue: GitHub.