-
Bug
-
Resolution: Duplicate
-
Major
-
Jenkins 2.138.3
workflow-durable-task-step 2.26
Run Jenkins with -Dorg.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep.USE_WATCHING=true. Add an agent launched via SSH (the launch method may not be important; this is just what I've observed the issue with).
Add a pipeline job with this script:
node('mynode') { sh '''#!/bin/sh -e for n in $(seq 100); do echo "$n" sleep 1 done ''' sh 'echo OK' }
Run the pipeline. When it starts printing numbers to the log, disconnect the master from the network. After 30 seconds, reconnect it.
What happens is that for a while (haven't measured, but it feels like a couple of minutes) nothing new appears in the log. After that, the job instantly completes, but:
- Some of the output is missing from the log.
- The "echo OK" step doesn't run.
- The pipeline fails with an EOFException.
I'm attaching a full example log.
By contrast, with USE_WATCHING=false the log resumes a few seconds after the reconnection, no output is skipped and the job succeeds.
- relates to
-
JENKINS-41854 Contextualize a fresh FilePath after an agent reconnection
- Resolved
-
JENKINS-56851 Flush durable task output before agent shutdown or before writing lastLocation
- Open
-
JENKINS-52165 Use push rather than pull for durable task logging
- Reopened