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

Removing Docker node with OnceRetentionStrategy can lead to deadlock

XMLWordPrintable

      Manual removing of Docker build node with OnceRetentionStrategy causing deadlock with next stacktrace:

      Found one Java-level deadlock:
      =============================
      "Handling GET / from 192.168.10.18 : RequestHandlerThread[#255] View/index.jelly View/sidepanel.jelly":
        waiting to lock monitor 0x00007f4b9ae22bc8 (object 0x000000078713b8f0, a hudson.model.Queue),
        which is held by "jenkins.util.Timer [#3]"
      "jenkins.util.Timer [#3]":
        waiting to lock monitor 0x00007f4b9ae219e8 (object 0x0000000787158e00, a hudson.model.Hudson),
        which is held by "Executor #0 for bfe04df8701e@vm : executing project-release #125"
      "Executor #0 for bfe04df8701e@vm : executing project-release #125":
        waiting to lock monitor 0x00007f4b997e99b8 (object 0x0000000792523c40, a org.jenkinsci.plugins.durabletask.executors.OnceRetentionStrategy),
        which is held by "jenkins.util.Timer [#3]"
      
      Java stack information for the threads listed above:
      ===================================================
      "Handling GET / from 192.168.10.18 : RequestHandlerThread[#255] View/index.jelly View/sidepanel.jelly":
      	at hudson.model.Queue.getItems(Queue.java:693)
      	- waiting to lock <0x000000078713b8f0> (a hudson.model.Queue)
      	at hudson.model.Queue$CachedItemList.get(Queue.java:229)
      	at hudson.model.Queue.getApproximateItemsQuickly(Queue.java:723)
      	at hudson.model.View.getApproximateQueueItemsQuickly(View.java:484)
      	at sun.reflect.GeneratedMethodAccessor3580.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at groovy.lang.MetaClassImpl$GetBeanMethodMetaProperty.getProperty(MetaClassImpl.java:3500)
      	at org.codehaus.groovy.runtime.callsite.GetEffectivePojoPropertySite.getProperty(GetEffectivePojoPropertySite.java:61)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:227)
      	at jenkins.widgets.BuildQueueWidget.index.run(index.groovy:5)
      	at org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:74)
      	at org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:62)
      	at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:147)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)
      	at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	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:120)
      	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.JellyViewScript.run(JellyViewScript.java:95)
      	at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:147)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)
      	at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      

            Unassigned Unassigned
            3cky Victor Antonovich
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: