<< Back to previous view

[QB-1758] QuickBuild unable to checkout Mercurial repository
Created: 21/Aug/13  Updated: 23/Nov/13

Status: Closed
Project: QuickBuild
Component/s: None
Affects Version/s: 4.0.91
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Keni Popovski Assigned To: Steve Luo
Resolution: Cannot Reproduce Votes: 0
Remaining Estimate: 10 hours Time Spent: Unknown
Original Estimate: 10 hours
Environment: QB 5.0.7, running on Linux


 Description   
When trying to checkout a Mercurial repository, QuickBuilld threw an exception indicating an "unknown revision". I have only seen this once, as the previous and all subsequent runs performed without an issue. The output is given below:

15:05:24,162 INFO - Executing pre-execute action...
15:05:24,163 INFO - Running step...
15:05:24,171 INFO - Checking step execute condition...
15:05:24,173 INFO - Step execute condition satisfied, executing...
15:05:25,179 INFO - Executing pre-execute action...
15:05:25,188 INFO - Checking out Verification_tools repo at tip
15:05:25,188 INFO - Running step...
15:05:25,197 INFO - Getting changes of 'Verification_tools' since build '1.0.105'...
15:05:25,620 INFO - Getting changes between c311191f8c0dbd2ca34daf3429471c41e6966fed - b358dfb13eae3f59dc23f7fbb3ce234e6b722406
15:05:25,659 ERROR - abort: unknown revision 'c311191f8c0dbd2ca34daf3429471c41e6966fed'!
15:05:25,872 INFO - Executing post-execute action...
15:05:25,872 ERROR - Step 'master>ROOT-VerificationTools Checkout' is failed.
    com.pmease.quickbuild.QuickbuildException: Failed to run command: hg -y log -l1 --template={date|rfc3339date} -r c311191f8c0dbd2ca34daf3429471c41e6966fed
    Command return code: 255
    Command error output: abort: unknown revision 'c311191f8c0dbd2ca34daf3429471c41e6966fed'!
        at com.pmease.quickbuild.execution.Commandline$ExecuteResult.buildException(Commandline.java:442)
        at com.pmease.quickbuild.execution.Commandline$ExecuteResult.checkReturnCode(Commandline.java:457)
        at com.pmease.quickbuild.plugin.scm.helper.ScmCli.run(ScmCli.java:90)
        at com.pmease.quickbuild.plugin.scm.helper.ScmCli.run(ScmCli.java:79)
        at com.pmease.quickbuild.plugin.scm.helper.ScmCli.run(ScmCli.java:71)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgCli.getDateOfRevision(HgCli.java:218)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgCli.changesBetween(HgCli.java:230)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository.getChangesBetween(HgRepository.java:83)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.CGLIB$getChangesBetween$9(<generated>)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3$$FastClassByCGLIB$$3742a8b9.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
        at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:269)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.getChangesBetween(<generated>)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository.getChangesBetween(HgRepository.java:36)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.CGLIB$getChangesBetween$10(<generated>)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3$$FastClassByCGLIB$$3742a8b9.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
        at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:269)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.getChangesBetween(<generated>)
        at com.pmease.quickbuild.repositorysupport.Repository.getChangesSince(Repository.java:459)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.CGLIB$getChangesSince$74(<generated>)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3$$FastClassByCGLIB$$3742a8b9.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
        at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:269)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.getChangesSince(<generated>)
        at com.pmease.quickbuild.repositorysupport.Repository.getChanges(Repository.java:386)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.CGLIB$getChanges$56(<generated>)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3$$FastClassByCGLIB$$3742a8b9.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
        at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:269)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.getChanges(<generated>)
        at com.pmease.quickbuild.repositorysupport.Repository.getChanges(Repository.java:365)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.CGLIB$getChanges$55(<generated>)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3$$FastClassByCGLIB$$3742a8b9.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
        at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:269)
        at com.pmease.quickbuild.plugin.scm.mercurial.HgRepository$$EnhancerByCGLIB$$ba46cbb3.getChanges(<generated>)
        at com.pmease.quickbuild.plugin.basis.checkout.CheckoutStep.run(CheckoutStep.java:74)
        at com.pmease.quickbuild.plugin.basis.checkout.CheckoutStep$$EnhancerByCGLIB$$8a60c80b.CGLIB$run$2(<generated>)
        at com.pmease.quickbuild.plugin.basis.checkout.CheckoutStep$$EnhancerByCGLIB$$8a60c80b$$FastClassByCGLIB$$6cfa34ca.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
        at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:269)
        at com.pmease.quickbuild.plugin.basis.checkout.CheckoutStep$$EnhancerByCGLIB$$8a60c80b.run(<generated>)
        at com.pmease.quickbuild.stepsupport.Step.execute(Step.java:501)
        at com.pmease.quickbuild.stepsupport.StepExecutionJob.executeStepAwareJob(StepExecutionJob.java:29)
        at com.pmease.quickbuild.stepsupport.StepAwareJob.executeBuildAwareJob(StepAwareJob.java:47)
        at com.pmease.quickbuild.BuildAwareJob.execute(BuildAwareJob.java:61)
        at com.pmease.quickbuild.grid.GridJob.run(GridJob.java:78)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:722)

 Comments   
Comment by Steve Luo [ 21/Aug/13 05:08 AM ]
This seems not a QuickBuild bug. Please run the same command from your console on the same node:
hg -y log -l1 --template={date|rfc3339date} -r c311191f8c0dbd2ca34daf3429471c41e6966fed

here, revision c311191f8c0dbd2ca34daf3429471c41e6966fed is the version built for your previous build. Are there any merge/rebase operations occurred which cause hg drop this revision?
Comment by Keni Popovski [ 21/Aug/13 07:30 AM ]
There were no merge operations at the point of this failure. I doubt there were any merge operations at the time. I am unable to try executing that command at the moment, but I will look into it.
Comment by Keni Popovski [ 22/Aug/13 01:33 AM ]
When running the command again, I get the same output: "abort: unknown revision 'c311191f8c0dbd2ca34daf3429471c41e6966fed'!".
Comment by Steve Luo [ 22/Aug/13 05:52 AM ]
It sounds like revision 'c311191f8c0dbd2ca34daf3429471c41e6966fed'!" was dropped in your hg repository to me. I don't know why this happens, but if you can build successfully with this revision 'c311191f8c0dbd2ca34daf3429471c41e6966fed' (previous build of this error), there must be something happened in your hg repository which cause this revision disappeared.

Please consult your mercurial admin to see why revision 'c311191f8c0dbd2ca34daf3429471c41e6966fed' is not there.
Generated at Thu May 16 07:12:10 UTC 2024 using JIRA 189.