Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-6625

Deadlock in hudson.maven.MavenModuleSet with JobConfigHistory plugin

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Major
    • maven-plugin
    • None
    • Hudson 1.359; Java 6; Solaris 10

    Description

      Using the JobConfigHistory plugin shows a race condition in hudson.maven.MavenModuleSet:

      Handling POST /hudson/job/VK-All-CI-SITE/configSubmit : RequestHandlerThread[#7]
      
      "Handling POST /hudson/job/VK-All-CI-SITE/configSubmit : RequestHandlerThread[#7]" Id=93 Group=main BLOCKED on hudson.maven.MavenModuleSet@1e3c2c6 owned by "Handling GET /hudson/job/VK-All-CI-SITE/ : RequestHandlerThread[#14]" Id=135
      	at hudson.model.AbstractProject.getActions(AbstractProject.java:870)
      	-  blocked on hudson.maven.MavenModuleSet@1e3c2c6
      	at hudson.model.Actionable.getActions(Actionable.java:75)
      	at hudson.plugins.jobConfigHistory.JobConfigHistoryActionFactory.createFor(JobConfigHistoryActionFactory.java:30)
      	at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:523)
      	at hudson.maven.AbstractMavenProject.updateTransientActions(AbstractMavenProject.java:48)
      	-  locked java.util.Vector@aa3d58
      	at hudson.maven.MavenModuleSet.updateTransientActions(MavenModuleSet.java:199)
      	at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:557)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:235)
      	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:116)
      	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:57)
      	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:75)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:525)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:181)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:525)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:441)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:123)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
      
      
      
      
      
      
      Handling GET /hudson/job/VK-All-CI-SITE/ : RequestHandlerThread[#14]
      
      "Handling GET /hudson/job/VK-All-CI-SITE/ : RequestHandlerThread[#14]" Id=135 Group=main BLOCKED on java.util.Vector@aa3d58 owned by "Handling POST /hudson/job/VK-All-CI-SITE/configSubmit : RequestHandlerThread[#7]" Id=93
      	at java.util.Vector.toArray(Vector.java:643)
      	-  blocked on java.util.Vector@aa3d58
      	at java.util.Vector.addAll(Vector.java:830)
      	-  locked java.util.Vector@981d47
      	at hudson.model.AbstractProject.getActions(AbstractProject.java:871)
      	-  locked hudson.maven.MavenModuleSet@1e3c2c6
      	at sun.reflect.GeneratedMethodAccessor139.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125)
      	at org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314)
      	at org.apache.commons.jexl.parser.ASTArrayAccess.evaluateExpr(ASTArrayAccess.java:185)
      	at org.apache.commons.jexl.parser.ASTIdentifier.execute(ASTIdentifier.java:75)
      	at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83)
      	at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)
      	at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:51)
      	at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)
      	at hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:72)
      	at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
      	at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsIterator(ExpressionSupport.java:94)
      	at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:89)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:96)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:118)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:118)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:75)
      	at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:76)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:96)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:75)
      	at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:96)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:118)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:75)
      	at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:76)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:76)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:76)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:76)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:76)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:76)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:96)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:40)
      	at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:30)
      	at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:43)
      	at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:83)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:514)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:181)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:525)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:441)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:123)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
      	at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              tjuerge tjuerge
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: