eclipse-vertx/vert.x · error · java.lang.IllegalArgumentException

Unknown ResolvedAddressTypes ${resolvedAddressTypes}

Error message

Unknown ResolvedAddressTypes ${resolvedAddressTypes}

What it means

Defensive guard in the hosts-file lookup path: the ResolvedAddressTypes enum did not match any of the known cases (IPV4_ONLY, IPV6_ONLY, IPV4_PREFERRED, IPV6_PREFERRED) in the switch. This indicates a new/unexpected enum constant or a corrupted value rather than a user input error.

Source

Thrown at vertx-core/src/main/java/io/vertx/core/dns/impl/DnsAddressResolverProvider.java:174

    if (address == null) {
      address = lookup(inetHost.toLowerCase(Locale.ENGLISH), resolvedAddressTypes);
    }
    return address;
  }
  InetAddress lookup(String inetHost, ResolvedAddressTypes resolvedAddressTypes) {
    switch (resolvedAddressTypes) {
      case IPV4_ONLY:
        return parsedHostsFile.inet4Entries().get(inetHost);
      case IPV6_ONLY:
        return parsedHostsFile.inet6Entries().get(inetHost);
      case IPV4_PREFERRED:
        Inet4Address inet4Address = parsedHostsFile.inet4Entries().get(inetHost);
        return inet4Address != null? inet4Address : parsedHostsFile.inet6Entries().get(inetHost);
      case IPV6_PREFERRED:
        Inet6Address inet6Address = parsedHostsFile.inet6Entries().get(inetHost);
        return inet6Address != null? inet6Address : parsedHostsFile.inet4Entries().get(inetHost);
      default:
        throw new IllegalArgumentException("Unknown ResolvedAddressTypes " + resolvedAddressTypes);
    }
  }

  public DnsNameResolverBuilder getDnsNameResolverBuilder() {
    return dnsNameResolverBuilder;
  }

  /**
   * @return a list of DNS servers available to use
   */
  public List<InetSocketAddress> nameServerAddresses() {
    return serverList;
  }

  @Override
  public AddressResolverGroup<InetSocketAddress> resolver(AddressResolverOptions options) {
    return resolverGroup;
  }

View on GitHub (pinned to fb308bd8c3)

Solutions

  1. Ensure the AddressResolverOptions resolving back to a supported ResolvedAddressTypes value
  2. Upgrade Vert.x so the enum and this switch agree if a new address type was introduced
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at vertx-core/src/main/java/io/vertx/core/dns/impl/DnsAddressResolverProvider.java:174 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of eclipse-vertx/vert.x@fb308bd8c3 (2026-09-06). Data as JSON: /api/errors/c74f0d6aa5bfdc87. Report an issue: GitHub.