Details
-
Bug
-
Resolution: Unresolved
-
Low
-
None
-
5.10.3, 6.6.2, 6.7.2
-
11
-
Severity 3 - Minor
-
1
-
Description
Summary
If we start a build but then choose to stop the build while it's in the middle of the Source Code Checkout, Bamboo leaves the SVN working copy in a locked state and therefore the next time we start the build, it will fail with the "svn: E155004" error stating the directory is locked.
It would be nice if Bamboo could clean up the working copy after stopping a build or if the build was interrupted to avoid this problem.
Steps to Reproduce
- Run a build configured to checkout code from a Subversion repository.
- Stop build while Bamboo is executing the Source Code Checkout task.
- Start a new build.
Expected Results
The new build should run without any problems.
Actual Results
The new build fails with the following exception:
error 01-Aug-2016 17:46:39 Error occurred while running Task 'Checkout Default Repository(1)' of type com.atlassian.bamboo.plugins.vcs:task.vcs.checkout. error 01-Aug-2016 17:46:39 java.lang.RuntimeException: com.atlassian.bamboo.repository.RepositoryException: Unable to retrieve source code for revision '2', plan 'SVN-SUB-JOB1': svn: E155004: Working copy '/Users/bamboo/Documents/Atlassian/bamboo/bamboo-5.10.3/home/xml-data/build-dir/163841/SVN-SUB-JOB1' locked error 01-Aug-2016 17:46:39 svn: E155004: '/Users/bamboo/Documents/Atlassian/bamboo/bamboo-5.10.3/home/xml-data/build-dir/163841/SVN-SUB-JOB1' is already locked. error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.executor.RetryingTaskExecutor.rerun(RetryingTaskExecutor.java:144) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.executor.RetryingTaskExecutor.runTask(RetryingTaskExecutor.java:88) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.executor.RetryingTaskExecutor.retry(RetryingTaskExecutor.java:203) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.executor.RetryingTaskExecutor.retry(RetryingTaskExecutor.java:188) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.plugins.vcs.task.VcsCheckoutTask.execute(VcsCheckoutTask.java:145) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.task.TaskExecutorImpl.lambda$executeTasks$125(TaskExecutorImpl.java:273) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.task.TaskExecutorImpl.executeTaskWithPrePostActions(TaskExecutorImpl.java:202) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.task.TaskExecutorImpl.executeTasks(TaskExecutorImpl.java:273) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.task.TaskExecutorImpl.executePreparationTasks(TaskExecutorImpl.java:83) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.build.pipeline.tasks.PrepareBuildTask.call(PrepareBuildTask.java:74) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:215) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl$1.call(BuildAgentControllerImpl.java:139) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl$1.call(BuildAgentControllerImpl.java:130) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.variable.CustomVariableContextImpl.withVariableSubstitutor(CustomVariableContextImpl.java:215) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:129) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:137) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.utils.BambooRunnables$1.run(BambooRunnables.java:49) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.security.ImpersonationHelper.runWith(ImpersonationHelper.java:31) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.security.ImpersonationHelper.runWithSystemAuthority(ImpersonationHelper.java:20) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.security.ImpersonationHelper$1.run(ImpersonationHelper.java:52) error 01-Aug-2016 17:46:39 at java.lang.Thread.run(Thread.java:745) error 01-Aug-2016 17:46:39 Caused by: com.atlassian.bamboo.repository.RepositoryException: Unable to retrieve source code for revision '2', plan 'SVN-SUB-JOB1': svn: E155004: Working copy '/Users/bamboo/Documents/Atlassian/bamboo/bamboo-5.10.3/home/xml-data/build-dir/163841/SVN-SUB-JOB1' locked error 01-Aug-2016 17:46:39 svn: E155004: '/Users/bamboo/Documents/Atlassian/bamboo/bamboo-5.10.3/home/xml-data/build-dir/163841/SVN-SUB-JOB1' is already locked. error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.repository.svn.SvnRepository.retrieveSourceCode(SvnRepository.java:627) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.plugins.vcs.task.VcsCheckoutTask.fillWorkingDirFromVcs(VcsCheckoutTask.java:280) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.plugins.vcs.task.VcsCheckoutTask.access$000(VcsCheckoutTask.java:57) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.plugins.vcs.task.VcsCheckoutTask$1.call(VcsCheckoutTask.java:150) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.plugins.vcs.task.VcsCheckoutTask$1.call(VcsCheckoutTask.java:146) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.executor.RetryingTaskExecutor.rerun(RetryingTaskExecutor.java:108) error 01-Aug-2016 17:46:39 ... 20 more error 01-Aug-2016 17:46:39 Caused by: org.tmatesoft.svn.core.SVNException: svn: E155004: Working copy '/Users/bamboo/Documents/Atlassian/bamboo/bamboo-5.10.3/home/xml-data/build-dir/163841/SVN-SUB-JOB1' locked error 01-Aug-2016 17:46:39 svn: E155004: '/Users/bamboo/Documents/Atlassian/bamboo/bamboo-5.10.3/home/xml-data/build-dir/163841/SVN-SUB-JOB1' is already locked. error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:64) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc17.db.SVNWCDb$WCLockObtain.transaction(SVNWCDb.java:5722) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.db.SVNSqlJetDb.runTransaction(SVNSqlJetDb.java:256) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.db.SVNSqlJetDb.runTransaction(SVNSqlJetDb.java:250) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc17.db.SVNWCDb.obtainWCLock(SVNWCDb.java:5655) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc17.SVNWCContext.acquireWriteLock(SVNWCContext.java:1632) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgAbstractUpdate.update(SvnNgAbstractUpdate.java:106) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgUpdate.run(SvnNgUpdate.java:38) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgUpdate.run(SvnNgUpdate.java:18) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgOperationRunner.run(SvnNgOperationRunner.java:20) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:21) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1235) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:294) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:311) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:291) error 01-Aug-2016 17:46:39 at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:387) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.repository.svn.SvnRepository.update(SvnRepository.java:1315) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.repository.svn.SvnRepository.retrieveSourceCodeWithException(SvnRepository.java:735) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.repository.svn.SvnRepository.retrieveSourceCodeWithCleanup(SvnRepository.java:661) error 01-Aug-2016 17:46:39 at com.atlassian.bamboo.repository.svn.SvnRepository.retrieveSourceCode(SvnRepository.java:604) error 01-Aug-2016 17:46:39 ... 25 more
Workaround
It is necessary to manually clear the SVN working copy for the failing plan at $BAMBOO_HOME/xml-data/build-dir/PROJ-PLAN-JOB1 to be able to start new builds. Update and clean your working copy:
svn update svn cleanup