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

Project modifaction fails because of serialization error


    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Critical
    • Resolution: Won't Fix
    • Component/s: core, other
    • Labels:
    • Similar Issues:



      This issue looks like JENKINS-6807.

      Problem occurs only if job configuration contains my own plugin. Jenkins version is 1.510

      Problem: If I create a new job or modify an existing job right after Hudson's startup everything is fine.
      Buf if I modify or create a job and then try to modfiy the same job a second time, hudson displays an "Status Code: 500" page and all changes I've made are lost. It does not have any influence if I modify other jobs in the meantime.

      Workaround: If I restart Hudson or use the "copy existing job" functinality I have "one modification free". But I cannot restart Hudson everytime I need to make an modification to an job or loose all job history by copy and rename a job I have to modify.

      Here is stacktrace:

      javax.servlet.ServletException: java.lang.RuntimeException: Failed to serialize hudson.model.Project#builders for class hudson.model.FreeStyleProject
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:719)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:770)
      at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
      Caused by: com.thoughtworks.xstream.converters.ConversionException: Could not call hudson.FilePath.writeObject() : Can't send a remote FilePath to a different remote channel
      ---- Debugging information ----
      message : Could not call hudson.FilePath.writeObject()
      cause-exception : java.lang.IllegalStateException
      cause-message : Can't send a remote FilePath to a different remote channel
      at com.thoughtworks.xstream.converters.reflection.SerializationMethodInvoker.callWriteObject(SerializationMethodInvoker.java:141)
      at com.thoughtworks.xstream.converters.reflection.SerializableConverter.doMarshal(SerializableConverter.java:232)
      at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:72)
      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:217)
      at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:204)
      ... 125 more
      Caused by: java.lang.IllegalStateException: Can't send a remote FilePath to a different remote channel
      at hudson.FilePath.writeObject(FilePath.java:2344)
      at sun.reflect.GeneratedMethodAccessor193.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at com.thoughtworks.xstream.converters.reflection.SerializationMethodInvoker.callWriteObject(SerializationMethodInvoker.java:135)
      ... 132 more




            • Assignee:
              v_artyukhov vyacheslav artyukhov
            • Votes:
              3 Vote for this issue
              2 Start watching this issue


              • Created: