apache/druid · error · IllegalArgumentException

must be positive

Error message

 must be positive

What it means

Generic validation helper for connection-pool settings: maxTotalConnections / maxConnectionsPerRoute must be > 0; a zero or negative configured value is rejected with the message naming the offending property.

Solutions

  1. Set the named pool-size property to a positive integer.
  2. Remove the property to fall back to its default value.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at extensions-contrib/consul-extensions/src/main/java/org/apache/druid/consul/discovery/ConsulDiscoveryConfig.java:269 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of apache/druid@9b90983fd2 (2026-09-07). Data as JSON: /api/errors/44941ce399dd0206. Report an issue: GitHub.

Appendix: source

Thrown at extensions-contrib/consul-extensions/src/main/java/org/apache/druid/consul/discovery/ConsulDiscoveryConfig.java:269

          DEFAULT_MAX_CONNECTIONS_PER_ROUTE,
          "maxConnectionsPerRoute"
      );
    }

    private static int validatePort(Integer port)
    {
      int portValue = port == null ? 8500 : port;
      if (portValue < 1 || portValue > 65535) {
        throw new IllegalArgumentException("port must be between 1 and 65535");
      }
      return portValue;
    }

    private static int validateConnectionPoolSize(Integer value, int defaultValue, String name)
    {
      int result = value == null ? defaultValue : value;
      if (result <= 0) {
        throw new IAE(name + " must be positive");
      }
      return result;
    }

    @JsonProperty
    public String getHost()
    {
      return host;
    }

    @JsonProperty
    public int getPort()
    {
      return port;
    }

    @JsonProperty
    public Duration getConnectTimeout()

View on GitHub (pinned to 9b90983fd2)