Skip to content

Commit e0aee59

Browse files
authored
[JENKINS-70531] Apply timeout on WebSocket write operations (#7596)
* Apply timeout on WebSocket write operations * jenkinsci/remoting#621 released
1 parent 8883054 commit e0aee59

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

core/src/main/java/jenkins/agents/WebSocketAgents.java

+13-4
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
import java.util.Collections;
4545
import java.util.HashMap;
4646
import java.util.Map;
47+
import java.util.concurrent.TimeUnit;
4748
import java.util.logging.Level;
4849
import java.util.logging.Logger;
4950
import jenkins.slaves.JnlpAgentReceiver;
@@ -166,11 +167,19 @@ protected void error(Throwable cause) {
166167

167168
class Transport extends AbstractByteBufferCommandTransport {
168169

170+
Transport() {
171+
super(true);
172+
}
173+
169174
@Override
170-
protected void write(ByteBuffer header, ByteBuffer data) throws IOException {
171-
LOGGER.finest(() -> "sending message of length " + ChunkHeader.length(ChunkHeader.peek(header)));
172-
sendBinary(header, false);
173-
sendBinary(data, true);
175+
protected void write(ByteBuffer headerAndData) throws IOException {
176+
// As in Engine.runWebSocket:
177+
LOGGER.finest(() -> "sending message of length " + (headerAndData.remaining() - ChunkHeader.SIZE));
178+
try {
179+
sendBinary(headerAndData).get(5, TimeUnit.MINUTES);
180+
} catch (Exception x) {
181+
throw new IOException(x);
182+
}
174183
}
175184

176185
@Override

pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ THE SOFTWARE.
8787
<changelog.url>https://www.jenkins.io/changelog</changelog.url>
8888

8989
<!-- Bundled Remoting version -->
90-
<remoting.version>3085.vc4c6977c075a</remoting.version>
90+
<remoting.version>3107.v665000b_51092</remoting.version>
9191
<!-- Minimum Remoting version, which is tested for API compatibility -->
9292
<remoting.minimum.supported.version>4.7</remoting.minimum.supported.version>
9393

0 commit comments

Comments
 (0)