FYI- jenkins-multijob-plugin is not a vaild component, or else I would have filed this there. Feel free to move or change component.
Sometimes, when the jenkins multijob plugin is dispatching jobs, one will fail. If this happens, it will cancel jobs in the future loop. The loop is at MultiJobBuilder.java:92. If a job is canceled, calling future.get() on it will cause a cancellation exception.
A good way to try and reproduce this is to create multiple jobs, including one which will auto-fail, and one which will wait for a while. An easy way to do this is to make two "Execute Shell" jobs:
Job which auto-fails: "ls /not/a/real/directory"
Job which waits: "sleep 20"
Backtrace:
FATAL: null
java.util.concurrent.CancellationException
at hudson.remoting.AsyncFutureImpl.get(AsyncFutureImpl.java:77)
at com.tikal.jenkins.plugins.multijob.MultiJobBuilder.perform(MultiJobBuilder.java:102)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:705)
at hudson.model.Build$RunnerImpl.build(Build.java:178)
at hudson.model.Build$RunnerImpl.doRun(Build.java:139)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475)
at hudson.model.Run.run(Run.java:1434)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild.run(MultiJobBuild.java:45)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:239)