-
Bug
-
Resolution: Cannot Reproduce
-
Blocker
-
None
-
Agent: OSX Mojave 10.14.4
Jenkins: Linux (Jenkins LTS 2.164.2)
Java on agent:
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)
Java on master:
openjdk version "1.8.0_201"
OpenJDK Runtime Environment (build 1.8.0_201-b09)
OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)
Agent: OSX Mojave 10.14.4 Jenkins: Linux (Jenkins LTS 2.164.2) Java on agent: java version "1.8.0_162" Java(TM) SE Runtime Environment (build 1.8.0_162-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode) Java on master: openjdk version "1.8.0_201" OpenJDK Runtime Environment (build 1.8.0_201-b09) OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)
Hello!
We run JNLP-powered agents on 4 Mac machines, after Jenkins update to 2.164.2 (from 2.150.3), those machines are not able to connect using JNLP-4 (see exception below), although JNLP-3 connection works.
Agent is run as:
/usr/bin/java -Djava.awt.headless=true -jar /Applications/Jenkins/agent.jar -jnlpUrl https://<redacted-master-address>/computer/<redacted-agent>/slave-agent.jnlp -secret <redacted-secret> -workDir /Users/jenkins/jenkins_root
Exception on agent:
INFO: Protocol JNLP4-connect encountered an unexpected exception
java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowledgement sent
at org.jenkinsci.remoting.util.SettableFuture.get(SettableFuture.java:223)
at hudson.remoting.Engine.innerRun(Engine.java:614)
at hudson.remoting.Engine.run(Engine.java:474)
Caused by: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowledgement sent
at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecvClosed(AckFilterLayer.java:280)
at org.jenkinsci.remoting.protocol.FilterLayer.abort(FilterLayer.java:164)
at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.access$000(AckFilterLayer.java:43)
at org.jenkinsci.remoting.protocol.impl.AckFilterLayer$1.run(AckFilterLayer.java:176)
at org.jenkinsci.remoting.protocol.IOHub$DelayedRunnable.run(IOHub.java:964)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at hudson.remoting.Engine$1.lambda$newThread$0(Engine.java:93)
at java.lang.Thread.run(Thread.java:748
On jenkins master:
Apr 22, 2019 3:42:42 AM hudson.TcpSlaveAgentListener$ConnectionHandler run
WARNING: Connection #1512 failed
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:197)
at java.io.DataInputStream.readFully(DataInputStream.java:169)
at hudson.TcpSlaveAgentListener$ConnectionHandler.run(TcpSlaveAgentListener.java:244)
Apr 22, 2019 3:42:42 AM hudson.TcpSlaveAgentListener$ConnectionHandler run
INFO: Accepted JNLP4-connect connection #1,513 from /<redacted-agent-ip>:58595
Apr 22, 2019 3:42:54 AM hudson.TcpSlaveAgentListener$ConnectionHandler run
WARNING: Connection #1514 failed
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:197)
at java.io.DataInputStream.readFully(DataInputStream.java:169)
at hudson.TcpSlaveAgentListener$ConnectionHandler.run(TcpSlaveAgentListener.java:244)
Things that I checked:
- agent.jar is up-to-date and matches the one on master
- JNLP port on master is open and available from the agent