Details
-
Bug
-
Resolution: Fixed
-
High
-
1.0.5
-
None
Description
Recently, our Subversion builds stopped working, with lots of the following exceptions:
com.atlassian.bamboo.repository.RepositoryException: <project> - <plan> at com.atlassian.bamboo.repository.svn.SvnRepository.getChangesSinceLastBuild(SvnRepository.java:448) at com.atlassian.bamboo.build.strategy.PollingBuildStrategy.requiresBuild(PollingBuildStrategy.java:128) at com.atlassian.bamboo.build.DefaultBuildChangeDetector.checkIfBuildNeedsBuilding(DefaultBuildChangeDetector.java:166) at com.atlassian.bamboo.build.DefaultBuildChangeDetector.doTask(DefaultBuildChangeDetector.java:114) at com.atlassian.bamboo.build.DefaultBuildChangeDetector.run(DefaultBuildChangeDetector.java:77) at edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1.run(ThreadHelpers.java:34) at java.lang.Thread.run(Thread.java:595) Caused by: org.tmatesoft.svn.core.SVNException: svn: WC report failed: NULL at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:62) at org.tmatesoft.svn.core.internal.wc.admin.SVNReporter.report(SVNReporter.java:117) at org.tmatesoft.svn.core.internal.io.fs.FSRepository.update(FSRepository.java:856) at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:162) at com.atlassian.bamboo.repository.svn.SvnRepository.update(SvnRepository.java:822) at com.atlassian.bamboo.repository.svn.SvnRepository.getChangesSinceLastBuild(SvnRepository.java:398) ... 6 more Caused by: java.lang.IndexOutOfBoundsException at java.nio.Buffer.checkBounds(Buffer.java:454) at java.nio.HeapByteBuffer.get(HeapByteBuffer.java:125) at org.tmatesoft.svn.core.internal.delta.SVNDeltaCombiner.decompress(SVNDeltaCombiner.java:132) at org.tmatesoft.svn.core.internal.delta.SVNDeltaCombiner.readWindow(SVNDeltaCombiner.java:111) at org.tmatesoft.svn.core.internal.io.fs.FSInputStream.getContents(FSInputStream.java:165) at org.tmatesoft.svn.core.internal.io.fs.FSInputStream.readContents(FSInputStream.java:113) at org.tmatesoft.svn.core.internal.io.fs.FSInputStream.read(FSInputStream.java:97) at org.tmatesoft.svn.core.io.diff.SVNDeltaGenerator.sendDelta(SVNDeltaGenerator.java:152) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.diffFiles(FSUpdateContext.java:411) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.updateEntry(FSUpdateContext.java:527) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.diffDirs(FSUpdateContext.java:330) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.updateEntry(FSUpdateContext.java:518) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.diffDirs(FSUpdateContext.java:330) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.updateEntry(FSUpdateContext.java:518) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.diffDirs(FSUpdateContext.java:330) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.updateEntry(FSUpdateContext.java:518) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.diffDirs(FSUpdateContext.java:330) at org.tmatesoft.svn.core.internal.io.fs.FSUpdateContext.drive(FSUpdateContext.java:290) at org.tmatesoft.svn.core.internal.io.fs.FSRepository.finishReport(FSRepository.java:1103) at org.tmatesoft.svn.core.internal.wc.admin.SVNReporter.report(SVNReporter.java:103) ... 10 more
Likely interpretation of the above is that our Subversion repository entered a state which triggered a bug in the svnkit reimplementation of the Subversion binary delta decoder.
Upgrading Bamboo's svnkit from the bundled 1.1.0 to latest upstream 1.1.2 fixed the problem.