0

I am running a Jenkins CI server which polls an SVN server and checks out the (Maven) project and builds it.

We have recently changed the build server and I set up Jenkins afresh with the few projects we have. Now this new instance has a major problem: Whenever a new file has been committed to the SVN repository, the Jenkins svn update process will corrupt those new files by having their content duplicated. So if one of our developers commits a new file A with this content:

<test>
</test>

then the file will end up in the Jenkins workspace like this:

<test>
</test>
<test>
</test>

Obviously this is very annoying. I can clear up the situation by wiping the workspace, but really, I don't want to do this every time the build fails. I have never had any troubles with SVN and/or Jenkins before.

What could be the reason for such behaviour?

3
  • 1
    This seems to be a bug with Jenkins: issues.jenkins-ci.org/browse/JENKINS-14551
    – Roman
    Feb 21, 2013 at 8:47
  • That's it, I never noticed that these changes had been coming from a merge. Thanks - and you may want to post this as an answer ;) Feb 21, 2013 at 9:24
  • Done. Wasn't too sure about it :)
    – Roman
    Feb 21, 2013 at 9:34

2 Answers 2

2
+50

This seems to be a bug with Jenkins: https://issues.jenkins-ci.org/browse/JENKINS-14551

For the time being, you're best way to handle this is to implement a workaround by the means of automatically clearing out the workspace before building. This may however not the way to go if you have huge and frequent merges - but from my understanding, they're working on it.

1
  • Yes, I've just posted a way to reproduce the bug on the issue tracker, so I hope it'll be fixed some time. We don't merge often, so I'll clean out the workspace by hand when it happens. Feb 21, 2013 at 9:36
0

I've never really trusted Jenkins to be able to handle the workspace changes/updates gracefully, so as a matter of rule, I've always selected the "Wipe out Workspace" option, and worked on optimising the SVN server, or the WAN link to the SVN server so that the frequent build/checkout cycles don't destroy the SVN server or the internet connection.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .