Hello!
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