Greg Allen commented on Bug JENKINS-15552

Think I have found the solution:

use the node's build history to find the first failed build.

Likely you will find some other error that caused some class to fail initialization.

In my case this was:

15:17:40.582 Caused by: java.lang.OutOfMemoryError: PermGen space
15:17:40.582 at hudson.security.PermissionScope.<init>(PermissionScope.java:70)
15:17:40.582 at hudson.security.PermissionScope.<clinit>(PermissionScope.java:95)
15:17:40.582 at hudson.security.Permission.<init>(Permission.java:178)
15:17:40.582 at hudson.security.Permission.<clinit>(Permission.java:291)
15:17:40.582 at hudson.scm.SCM.<clinit>(SCM.java:595)
15:17:40.582 at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:776)
15:17:40.582 at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:763)
15:17:40.582 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2308)
15:17:40.582 at hudson.remoting.UserRequest.perform(UserRequest.java:118)
15:17:40.598 at hudson.remoting.UserRequest.perform(UserRequest.java:48)
15:17:40.598 at hudson.remoting.Request$2.run(Request.java:287)
15:17:40.598 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
15:17:40.598 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
15:17:40.598 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
15:17:40.598 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
15:17:40.598 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
15:17:40.598 at hudson.remoting.Engine$1$1.run(Engine.java:60)
15:17:40.598 at java.lang.Thread.run(Thread.java:619)

This very likely explain all your symptoms.

Cryptically, because the class fails to initialize, it does not its serialVersionUID does not get initialized, and later the standard Serialization logic will equate this with a serial UID of 1, even though that's not really the case. Hence the unitialised class error turns into an unhelpful incompatible class error.

Restarting the slave will of course "fix" the memory issue temporarily.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to