metricsign
Start free
High severityconnectionSnowflake

Power BI Refresh Error:
JDBC 4

What does this error mean?

The JDBC driver cannot resolve the Snowflake account hostname to an IP address. DNS lookup for the Snowflake endpoint is failing, preventing any connection from being established.

Common causes

  • 1The Snowflake account identifier in the JDBC URL is incorrect or misspelled
  • 2The DNS server used by the JVM cannot resolve *.snowflakecomputing.com
  • 3Corporate DNS split-horizon configuration is not routing external queries correctly
  • 4A network namespace issue (Docker/Kubernetes) where the container DNS cannot reach external resolvers
  • 5Snowflake PrivateLink is configured but the private DNS zone is not set up for the client's network

How to fix it

  1. 1Test DNS resolution: nslookup <account>.snowflakecomputing.com — it should return a valid IP.
  2. 2Verify the account identifier in the JDBC URL is correct (use the exact identifier from Admin > Accounts).
  3. 3In containers/Kubernetes, check /etc/resolv.conf for correct nameserver entries.
  4. 4If using Snowflake Private Link, ensure the private hosted zone is properly configured in your VPC.
  5. 5Check for DNS search domain issues: the JVM may be appending unwanted suffixes to the hostname.

Frequently asked questions

Can I use an IP address instead of the hostname in the JDBC URL?

No — Snowflake uses SNI (Server Name Indication) for TLS and the certificate is validated against the hostname. Using an IP directly will cause SSL validation failures.

Does Snowflake's JDBC driver do its own DNS resolution?

No — it uses the JVM's standard DNS resolution (InetAddress), which in turn uses the OS DNS configuration (/etc/resolv.conf or the system DNS settings).

Official documentation: https://docs.snowflake.com/en/user-guide/client-connectivity-troubleshooting/error-messages

Other connection errors