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

Builds marked as failed - Dr Memory plugin (JEP-200)

      After recent update of Jenkins builds which uses Dr Memory plugin are marked as failed.

      Sequence of events:

      1. Build run finishes successfully as before Jenkins update. Marked as SUCCESS, Dr Memory results produced and visible in Jenkins
      2. Jenkins server restart 
      3. Build marked as FAILED, Dr Memory report no more visible

       

      error from jenkins.err log: 

      WARNING: net.praqma.drmemory.DrMemoryResult in file:/C:/Program%20Files%20(x86)/Jenkins/plugins/drmemory-plugin/WEB-INF/lib/drmemory-api-0.1.4.jar might be dangerous, so rejecting; see https://jenkins.io/redirect/class-filter/
      Apr 10, 2018 8:27:59 AM hudson.model.Run execute
      SEVERE: Failed to save build record
      java.io.IOException: java.lang.RuntimeException: Failed to serialize hudson.model.Actionable#actions for class hudson.model.FreeStyleBuild
      at hudson.XmlFile.write(XmlFile.java:200)
      at hudson.model.Run.save(Run.java:1923)
      at hudson.model.Run.execute(Run.java:1784)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      at hudson.model.ResourceController.execute(ResourceController.java:97)
      at hudson.model.Executor.run(Executor.java:429)
      Caused by: java.lang.RuntimeException: Failed to serialize hudson.model.Actionable#actions for class hudson.model.FreeStyleBuild
      at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:256)
      at hudson.util.RobustReflectionConverter$2.visit(RobustReflectionConverter.java:224)
      at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.visitSerializableFields(PureJavaReflectionProvider.java:138)
      at hudson.util.RobustReflectionConverter.doMarshal(RobustReflectionConverter.java:209)
      at hudson.util.RobustReflectionConverter.marshal(RobustReflectionConverter.java:150)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
      at com.thoughtworks.xstream.core.TreeMarshaller.start(TreeMarshaller.java:82)
      at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.marshal(AbstractTreeMarshallingStrategy.java:37)
      at com.thoughtworks.xstream.XStream.marshal(XStream.java:1026)
      at com.thoughtworks.xstream.XStream.marshal(XStream.java:1015)
      at com.thoughtworks.xstream.XStream.toXML(XStream.java:988)
      at hudson.XmlFile.write(XmlFile.java:193)
      ... 5 more
      Caused by: java.lang.RuntimeException: Failed to serialize net.praqma.jenkins.plugin.drmemory.DrMemoryBuildAction#results for class net.praqma.jenkins.plugin.drmemory.DrMemoryBuildAction
      at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:256)
      at hudson.util.RobustReflectionConverter$2.visit(RobustReflectionConverter.java:224)
      at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.visitSerializableFields(PureJavaReflectionProvider.java:138)
      at hudson.util.RobustReflectionConverter.doMarshal(RobustReflectionConverter.java:209)
      at hudson.util.RobustReflectionConverter.marshal(RobustReflectionConverter.java:150)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:88)
      at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeItem(AbstractCollectionConverter.java:64)
      at com.thoughtworks.xstream.converters.collections.CollectionConverter.marshal(CollectionConverter.java:74)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)
      at hudson.util.RobustReflectionConverter.marshallField(RobustReflectionConverter.java:265)
      at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:252)
      ... 18 more
      Caused by: java.lang.UnsupportedOperationException: Refusing to marshal net.praqma.drmemory.DrMemoryResult for security reasons; see https://jenkins.io/redirect/class-filter/
      at hudson.util.XStream2$BlacklistedTypesConverter.marshal(XStream2.java:543)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:88)
      at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeItem(AbstractCollectionConverter.java:64)
      at com.thoughtworks.xstream.converters.collections.CollectionConverter.marshal(CollectionConverter.java:74)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)
      at hudson.util.RobustReflectionConverter.marshallField(RobustReflectionConverter.java:265)
      at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:252)
      ... 33 more
      

          [JENKINS-50460] Builds marked as failed - Dr Memory plugin (JEP-200)

          reto271 in both cases(before and after jenkins restart) I can see build.xml file under location: "jobs/JOB_NAME/builds/BUILD_NUMBER." File does not seems to be affected by the restart itself. 

           

          Note: also option to start jenkins with param as below gives the same failing build:

          jenkins.exe start -Dhudson.remoting.ClassFilter=net.praqma.drmemory.DrMemoryResult

           

           

           

          Piotr Bogdanski added a comment - reto271 in both cases(before and after jenkins restart) I can see build.xml file under location: "jobs/JOB_NAME/builds/BUILD_NUMBER." File does not seems to be affected by the restart itself.    Note: also option to start jenkins with param as below gives the same failing build: jenkins.exe start -Dhudson.remoting.ClassFilter=net.praqma.drmemory.DrMemoryResult      

          Another update: I was wrong in my understanding of the issue earlier. Looks like the exception from description is thrown just after build run, not during jenkins server restart. 

          Piotr Bogdanski added a comment - Another update: I was wrong in my understanding of the issue earlier. Looks like the exception from description is thrown just after build run, not during jenkins server restart. 

          I was able to workround this issue, as suggested here, by adding below in jenkins.xml file:

           

           

          -Dhudson.remoting.ClassFilter=net.praqma.drmemory.DrMemoryResult,net.praqma.drmemory.DrMemoryResult$ErrorSummary,net.praqma.drmemory.errors.InvalidHeapArgument,net.praqma.drmemory.DrMemoryError$StackTrace,net.praqma.drmemory.DrMemoryError$Note

           

           

          Piotr Bogdanski added a comment - I was able to workround this issue, as suggested here , by adding below in jenkins.xml file:     -Dhudson.remoting.ClassFilter=net.praqma.drmemory.DrMemoryResult,net.praqma.drmemory.DrMemoryResult$ErrorSummary,net.praqma.drmemory.errors.InvalidHeapArgument,net.praqma.drmemory.DrMemoryError$StackTrace,net.praqma.drmemory.DrMemoryError$Note    

          Bue Petersen added a comment -

          We are happy to accept PRs solving the problem, but right now I don't have bandwidth to get the problem fixed.

          If it is simple and related to remoting, we might know what the problem is and then it is not complex to fix. In that case we could maybe supply a fix within some weeks.

           

           

          Bue Petersen added a comment - We are happy to accept PRs solving the problem, but right now I don't have bandwidth to get the problem fixed. If it is simple and related to remoting, we might know what the problem is and then it is not complex to fix. In that case we could maybe supply a fix within some weeks.    

          Bue Petersen added a comment -

          madsnielsen - this is the know remoting problem, we're going to fix for other of our plugins - right?

          Bue Petersen added a comment - madsnielsen - this is the know remoting problem, we're going to fix for other of our plugins - right?

          Bue Petersen added a comment -

          Oh, sorry for the spam. Yes he says - we will supply a fix during next week.

          Bue Petersen added a comment - Oh, sorry for the spam. Yes he says - we will supply a fix during next week.

          Oleg Nenashev added a comment -

          bue thanks for the update! Please feel free to ping me and jglick if any reviews are needed

          Oleg Nenashev added a comment - bue thanks for the update! Please feel free to ping me and jglick if any reviews are needed

          Mads Nielsen added a comment -

          Fixed in 1.5

          Mads Nielsen added a comment - Fixed in 1.5

          Mads Nielsen added a comment -

          Done

          Mads Nielsen added a comment - Done

          Oleg Nenashev added a comment -

          Thanks madsnielsen!

          Oleg Nenashev added a comment - Thanks madsnielsen !

            madsnielsen Mads Nielsen
            pinek Piotr Bogdanski
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: