pulsar: [Bug] DnsResolverUtil "Cannot get DNS TTL settings from sun.net.InetAddressCachePolicy class" in Java 17

Search before asking

  • I searched in the issues and found nothing similar.

Version

Pulsar Version: v3.0.0 OS Version: macOS Ventura 13.3.1 (M1 Mac) Java Version: openjdk 17.0.7 2023-04-18

Minimal reproduce step

Running through the Debezium example here: https://pulsar.apache.org/docs/3.0.x/io-cdc-debezium/

What did you expect to see?

The debezium-postgres-source connector successfully connect to the DB

What did you see instead?

Fails when running bin/pulsar-admin source localrun --source-config-file debezium-postgres-source-config.yaml The error is:

2023-05-09T12:54:19,661-0700 [main] WARN  org.apache.pulsar.common.util.netty.DnsResolverUtil - Cannot get DNS TTL settings from sun.net.InetAddressCachePolicy class
java.lang.IllegalAccessException: class org.apache.pulsar.common.util.netty.DnsResolverUtil cannot access class sun.net.InetAddressCachePolicy (in module java.base) because module java.base does not export sun.net to unnamed module @384ad17b
	at jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:392) ~[?:?]
	at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:674) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:560) ~[?:?]
	at org.apache.pulsar.common.util.netty.DnsResolverUtil.<clinit>(DnsResolverUtil.java:46) ~[org.apache.pulsar-pulsar-common-3.0.0.jar:3.0.0]
	at org.apache.pulsar.client.impl.ConnectionPool.createAddressResolver(ConnectionPool.java:159) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.client.impl.ConnectionPool.lambda$new$1(ConnectionPool.java:126) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at java.util.Optional.orElseGet(Optional.java:364) ~[?:?]
	at org.apache.pulsar.client.impl.ConnectionPool.<init>(ConnectionPool.java:126) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.client.impl.ConnectionPool.<init>(ConnectionPool.java:95) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.client.impl.ConnectionPool.<init>(ConnectionPool.java:90) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.client.impl.PulsarClientImpl.<init>(PulsarClientImpl.java:196) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.client.impl.PulsarClientImpl.<init>(PulsarClientImpl.java:153) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.client.impl.ClientBuilderImpl.build(ClientBuilderImpl.java:63) ~[org.apache.pulsar-pulsar-client-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.functions.runtime.thread.ThreadRuntimeFactory.initialize(ThreadRuntimeFactory.java:116) ~[org.apache.pulsar-pulsar-functions-runtime-3.0.0.jar:3.0.0]
	at org.apache.pulsar.functions.runtime.thread.ThreadRuntimeFactory.<init>(ThreadRuntimeFactory.java:85) ~[org.apache.pulsar-pulsar-functions-runtime-3.0.0.jar:3.0.0]
	at org.apache.pulsar.functions.LocalRunner.startThreadedMode(LocalRunner.java:643) ~[org.apache.pulsar-pulsar-functions-local-runner-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.functions.LocalRunner.start(LocalRunner.java:436) ~[org.apache.pulsar-pulsar-functions-local-runner-original-3.0.0.jar:3.0.0]
	at org.apache.pulsar.functions.LocalRunner.main(LocalRunner.java:216) ~[org.apache.pulsar-pulsar-functions-local-runner-original-3.0.0.jar:3.0.0]

Same as https://github.com/apache/pulsar/issues/15349

Anything else?

On a M1 Mac. Have tried older versions and running through Docker to no avail. Even tried editing pulsar-admin-common.sh to try different options on Line 98 as per the suggestions in https://github.com/apache/pulsar/issues/15349 but nothing worked

Are you willing to submit a PR?

  • I’m willing to submit a PR!

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 16 (10 by maintainers)

Most upvoted comments

Any rough idea when the fix will be released, tisonkun? If it takes long, is there any local patch I can apply. Much appreciated!