-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
AWS ECS with Docker image based on the official one.
Jenkins 2.303.3
BFA Plugin 2.1.0
Casc 1.54
I have Jenkins instances that get the casc reload event fired regularly to allow them to synchronise the yaml from a Git repo.
This seems to cause the Build Failure Analyser to always fail with a Null Pointer.
at com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner.findCauses(BuildFailureScanner.java:392)
at com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner.splitCauses(BuildFailureScanner.java:519)
at com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner.findIndications(BuildFailureScanner.java:438)
at com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner.scan(BuildFailureScanner.java:176)
at com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner.scanIfNotScanned(BuildFailureScanner.java:154)
at com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner.doScan(BuildFailureScanner.java:130)
at org.jenkinsci.plugins.workflow.job.WorkflowRun.finish(WorkflowRun.java:625)
at com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner.onCompleted(BuildFailureScanner.java:120)
at hudson.model.listeners.RunListener.fireCompleted(RunListener.java:208)
If I turn off the Casc reload then this doesn't occur and the scan works OK.
I see two issues here.
1. The Mongo cache has an issue if you create a new one, call start and immediately ask for data. It can be null as the update thread may not have loaded the data yet.
2. The Plugin doesn't handle the case with a casc reload event. This seems to update the knowledge base data bound property, with a new instance that has not been started. UI updates handled through configure handle the knowledge base updates.
Fixing just 1 makes it work but won't benefit from the caching if you are calling reload a lot.