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

Permgen leak with SimpleXStreamFlowNodeStorage

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Major Major
    • pipeline

      The workflow plugin can potentially cause a permgen leak if the SimpleXStreamFlowNodeStorage has a lot of flow nodes. Unfortunately I have not been able to reproduce this issue locally.

      Stack track:

          java.lang.String.intern(Native Method)
          org.xmlpull.mxp1.MXParserCachingStrings.newStringIntern(MXParserCachingStrings.java:317)
          org.xmlpull.mxp1.MXParserCachingStrings.newString(MXParserCachingStrings.java:287)
          org.xmlpull.mxp1.MXParser.parseStartTag(MXParser.java:1779)
          org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1127)
          org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
          com.thoughtworks.xstream.io.xml.XppReader.pullNextEvent(XppReader.java:109)
          com.thoughtworks.xstream.io.xml.AbstractPullReader.readRealEvent(AbstractPullReader.java:148)
          com.thoughtworks.xstream.io.xml.AbstractPullReader.readEvent(AbstractPullReader.java:135)
          com.thoughtworks.xstream.io.xml.AbstractPullReader.hasMoreChildren(AbstractPullReader.java:87)
          com.thoughtworks.xstream.io.ReaderWrapper.hasMoreChildren(ReaderWrapper.java:32)
          hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:267)
          hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:228)
          org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage$FlowNodeConverter.unmarshal(SimpleXStreamFlowNodeStorage.java:144)
          com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
          com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65)
          com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
          hudson.util.RobustReflectionConverter.unmarshalField(RobustReflectionConverter.java:349)
          hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:289)
          hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:228)
          com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
          com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65)
          com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
          com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
          com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)
          com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)
          com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1189)
          hudson.util.XStream2.unmarshal(XStream2.java:113)
          com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173)
          com.thoughtworks.xstream.XStream.fromXML(XStream.java:1053)
          hudson.XmlFile.read(XmlFile.java:142)
          org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage$PersistenceContext.loadInner(SimpleXStreamFlowNodeStorage.java:224)
          org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage$PersistenceContext.loadOuter(SimpleXStreamFlowNodeStorage.java:213)
          org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage$PersistenceContext.access$100(SimpleXStreamFlowNodeStorage.java:185)
          org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage.getNode(SimpleXStreamFlowNodeStorage.java:87)
          org.jenkinsci.plugins.workflow.cps.CpsFlowExecution$ConverterImpl.unmarshal(CpsFlowExecution.java:857)
      

            jglick Jesse Glick
            schristou Steven Christou
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: