debasishg / scala-redis

A scala library for connecting to a redis server, or a cluster of redis nodes using consistent hashing on the client side.
1.02k stars 219 forks source link

Cannot find method "setCreated" in java.net.Socket. Unsupported JVM? #270

Open TinusChen opened 3 years ago

TinusChen commented 3 years ago

Describe the bug

javax.ws.rs.ProcessingException: org.newsclub.net.unix.AFUNIXSocketException: Cannot find method "setCreated" in java.net.Socket. Unsupported JVM?

To reproduce $ sbt sbt:RedisClient> update sbt:RedisClient> test

Unexpected behavior

logs:

[info] PoolSpec:
[info] com.redis.PoolSpec *** ABORTED ***
[info]   javax.ws.rs.ProcessingException: org.newsclub.net.unix.AFUNIXSocketException: Cannot find method "setCreated" in java.net.Socket. Unsupported JVM?
[info]   at org.glassfish.jersey.apache.connector.ApacheConnector.apply(ApacheConnector.java:481)
[info]   at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:252)
[info]   at org.glassfish.jersey.client.JerseyInvocation$3.call(JerseyInvocation.java:724)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
[info]   at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:444)
[info]   at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:720)
[info]   at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:430)
[info]   at org.glassfish.jersey.client.JerseyInvocation$Builder.get(JerseyInvocation.java:321)
[info]   ...
[info]   Cause: org.newsclub.net.unix.AFUNIXSocketException: Cannot find method "setCreated" in java.net.Socket. Unsupported JVM?
[info]   at org.newsclub.net.unix.NativeUnixSocket.setCreated(Native Method)
[info]   at org.newsclub.net.unix.AFUNIXSocket.<init>(AFUNIXSocket.java:36)
[info]   at org.newsclub.net.unix.AFUNIXSocket.newInstance(AFUNIXSocket.java:54)
[info]   at com.github.dockerjava.jaxrs.ApacheUnixSocket.<init>(ApacheUnixSocket.java:51)
[info]   at com.github.dockerjava.jaxrs.UnixConnectionSocketFactory.createSocket(UnixConnectionSocketFactory.java:66)
[info]   at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:118)
[info]   at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
[info]   at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
[info]   at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
[info]   at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
[info]   ...
[info] RedisClusterSpec:
[info] com.redis.cluster.RedisClusterSpec *** ABORTED ***
[info]   javax.ws.rs.ProcessingException: org.newsclub.net.unix.AFUNIXSocketException: Cannot find method "setCreated" in java.net.Socket. Unsupported JVM?
[info]   at org.glassfish.jersey.apache.connector.ApacheConnector.apply(ApacheConnector.java:481)
[info]   at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:252)
[info]   at org.glassfish.jersey.client.JerseyInvocation$3.call(JerseyInvocation.java:724)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
[info]   at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:444)
[info]   at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:720)
[info]   at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:430)
[info]   at org.glassfish.jersey.client.JerseyInvocation$Builder.get(JerseyInvocation.java:321)
[info]   ...
[info]   Cause: org.newsclub.net.unix.AFUNIXSocketException: Cannot find method "setCreated" in java.net.Socket. Unsupported JVM?
[info]   at org.newsclub.net.unix.NativeUnixSocket.setCreated(Native Method)
[info]   at org.newsclub.net.unix.AFUNIXSocket.<init>(AFUNIXSocket.java:36)
[info]   at org.newsclub.net.unix.AFUNIXSocket.newInstance(AFUNIXSocket.java:54)
[info]   at com.github.dockerjava.jaxrs.ApacheUnixSocket.<init>(ApacheUnixSocket.java:51)
[info]   at com.github.dockerjava.jaxrs.UnixConnectionSocketFactory.createSocket(UnixConnectionSocketFactory.java:66)
[info]   at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:118)
[info]   at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
[info]   at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
[info]   at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
[info]   at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
[info]   ...
[info] DequeSpec:
[info] com.redis.ds.DequeSpec *** ABORTED ***
[info]   javax.ws.rs.ProcessingException: org.newsclub.net.unix.AFUNIXSocketException: Cannot find method "setCreated" in java.net.Socket. Unsupported JVM?
[info]   at org.glassfish.jersey.apache.connector.ApacheConnector.apply(ApacheConnector.java:481)

 ...
 ...

Additional information

version libraryDependencies ++= Seq( "net.debasishg" %% "redisclient" % "3.30" )

Mac version $ uname -a Darwin ... ... 16.7.0 Darwin Kernel Version 16.7.0: Sun Jun 2 20:26:31 PDT 2019; root:xnu-3789.73.50~1/RELEASE_X86_64 x86_64

sbt:RedisClient> scalaVersion [info] 2.12.10

$ java --version openjdk 15.0.2 2021-01-19 OpenJDK Runtime Environment (build 15.0.2+7-27) OpenJDK 64-Bit Server VM (build 15.0.2+7-27, mixed mode, sharing)

When I switch to jdk version 18, it still reports the same error.

$ java --version openjdk 18-ea 2022-03-15 OpenJDK Runtime Environment (build 18-ea+3-63) OpenJDK 64-Bit Server VM (build 18-ea+3-63, mixed mode, sharing)

When I switch to another version 9, it reports error with a little different info. see below:

$ java --version openjdk 9.0.4 OpenJDK Runtime Environment (build 9.0.4+11) OpenJDK 64-Bit Server VM (build 9.0.4+11, mixed mode)

[info] DequeSpec:
[info] com.redis.ds.DequeSpec *** ABORTED ***
[info]   javax.ws.rs.ProcessingException: org.newsclub.net.unix.AFUNIXSocketException: Connection refused (socket: /Users/tinus.chen/Library/Containers/com.docker.docker/Data/docker.sock)
[info]   at org.glassfish.jersey.apache.connector.ApacheConnector.apply(ApacheConnector.java:481)
[info]   at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:252)
[info]   at org.glassfish.jersey.client.JerseyInvocation$3.call(JerseyInvocation.java:724)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
[info]   at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
[info]   at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:444)
[info]   at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:720)
[info]   at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:430)
[info]   at org.glassfish.jersey.client.JerseyInvocation$Builder.get(JerseyInvocation.java:321)
[info]   ...
[info]   Cause: org.newsclub.net.unix.AFUNIXSocketException: Connection refused
[info]   at org.newsclub.net.unix.NativeUnixSocket.connect(Native Method)
[info]   at org.newsclub.net.unix.AFUNIXSocketImpl.connect(AFUNIXSocketImpl.java:137)
[info]   at org.newsclub.net.unix.AFUNIXSocket.connect(AFUNIXSocket.java:107)
[info]   at com.github.dockerjava.jaxrs.ApacheUnixSocket.connect(ApacheUnixSocket.java:62)
[info]   at com.github.dockerjava.jaxrs.UnixConnectionSocketFactory.connectSocket(UnixConnectionSocketFactory.java:74)
[info]   at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:134)
[info]   at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
[info]   at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
[info]   at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
[info]   at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
[info]   ...
[info] SerializationSpec:
[info] com.redis.SerializationSpec *** ABORTED ***
[info]   javax.ws.rs.ProcessingException: org.newsclub.net.unix.AFUNIXSocketException: Connection refused (socket: /Users/tinus.chen/Library/Containers/com.docker.docker/Data/docker.sock)