-
Bug
-
Resolution: Unresolved
-
Major
-
jenkins ver 2.176.3
jenkins ver 2.190.1
jenkins ver 2.190.3
jenkins ver 2.204.1
jenkins ver 2.204.2
I have a bunch of freestyle jobs, that compile and build an installer for my software on two compilers and in debug/release. Each of them takes aroung half an hour.
Then I tried to switch the build to a pipeline build, integrated build of debug and release to one job and additionally integrated several other stuff (cppcheck,...). This build ended up in taking 3-4 hours for quite a while (which I did not expect and regard it as slow also).
Since some weeks now my pipeline job suddenly started taking 8 hours while the freestyle jobs duration staid the same.
Something about my environment: it's a jenkins-installation as service on a windows server 2016 machine. I am not aware of any changes on the machine installation or job configuration since the job got slower. It's not a single step in the pipeline that eats all the time. It's the overall performance and the time is distributed over all steps. E.g. the compile and build installer step (which is the entire job done by the freestyle job) alone takes 3 hours.
Unfortunately I don't have the build history long enough to be able to identify plugin-versions from before and after the buildtime-increase.
Please contact me in case I can help with any additional information.
I maybe got the point:
My build deep inside makes use of a compiler | tee | grep,... and therefore is splitting the output into a file at one point.
Not too far ago I switched from a formerly deprected warnings parser to the warnings next generation plugin and therefore had to insert another | tee - split. I'm not yet 100% sure if this exactly matches the point were buildtimes increased but at least it might be close to. I'll set up a test.
At least my way quicker freestyle build does not make use of the inner | tee | grep!
On the other hand this | tee provides a list of other problems and I'd like to avoid it at any level - also for warnings next generation. Is there another way to split build output to a file and in the same step keep the return code?