-
Type:
Bug
-
Status: Resolved (View Workflow)
-
Priority:
Minor
-
Resolution: Fixed
-
Component/s: plot-plugin
-
Labels:None
-
Similar Issues:
Background
New class called PlotBuildAction was added when compatibility with Pipeline plugin was implemented in https://github.com/jenkinsci/plot-plugin/pull/32.
Seems like this class current implementation is not thread safe and user reported 1st time issue with ConcurrentModificationException in PR comment. Exception was not reproducible to me even though I used provided by reporter Jenkins & Pipeline configurations.
There was an attempt to blindly fix the issue in commit, but it didn't work out.
Second report about the same exception appeared recently.
Sam Van Oort proposed copy-on-write approach rather than synchronized for methods. It should be considered as potential fix.
Environment
- Plot plugin version is 1.2.0.
- Environment.
What should be done
- We need to reproduce ConcurrentModificationException while accessing plots array in PlotBuildAction and fix it.
- It's good to have a test for the fix
How to test
- If issue is reproducible, test should be written
- Gather feedback from https://github.com/dolfinsbizou and https://github.com/shawnhines as they reported about this exception and can verify on their environments
Similar issues:
Not sure yet how to reproduce the CME, gathering more info from similar issues and trying to reproduce it in a test first.