-
Bug
-
Resolution: Cannot Reproduce
-
Major
-
Powered by SuggestiMate
I'm running Jenkins v1.486 with envinject plugin version 1.72 being installed (but it's not configured/in use in the job where I get the error mentioned below). I noticed the following errors during job execution:
[EnvInject] - Loading node environment variables.
[EnvInject] - [ERROR] - SEVERE ERROR occurs: java.io.InvalidClassException: hudson.FilePath; local class incompatible: stream classdesc serialVersionUID = 1, local class serialVersionUID = -8164662025349363814
[...]
[EnvInject] - [ERROR] - SEVERE ERROR occurs: hudson.FilePath; local class incompatible: stream classdesc serialVersionUID = 1, local class serialVersionUID = -8164662025349363814
Once I disabled the envinject plugin the Jenkins job works fine again.
I guess it's an incompatibility between the plugin and the Jenkins version?
Let me know if you need any further information.
- is related to
-
JENKINS-13617 64-bit java.lang.OutOfMemoryError: PermGen space
-
- Closed
-
-
JENKINS-23706 Plugin Memory Leak : OutOfMemoryError : PermGen space
-
- Resolved
-
[JENKINS-15552] envinject plugin v1.72 might be incompatible with Jenkins v.1486
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.
Out of PermGen memory issue later manifests as an incompatible class error
Link |
New:
This issue is related to |
Component/s | New: core [ 15593 ] | |
Component/s | Original: envinject [ 15893 ] |
me too. version 1.488
with the following plugins installed:
External Monitor Job Type Plugin 1.1
LDAP Plugin 1.1
pam-auth 1.0
javadoc 1.0
ant 1.1
Macro Plugin 1.5.1
Config File Provider Plugin 2.2.1
Dashboard View 2.3
Jenkins Emma plugin 1.29
Emma Line Coverage Column 0.0.4
Safe Restart Plugin 0.2
Show Build Parameters plugin 1.0
Sectioned View Plugin 1.16
Purge Build Queue Plugin 1.0
Hudson Xvnc plugin 1.10
Compact Columns 1.9
Shelve Project Plugin 1.3
Progress Bar Column Plugin 1.0
Audit Trail 1.7
Jenkins DocLinks plugin 0.5
Log Parser Plugin 1.0.8
Console Column Plugin 1.5
Jenkins Parameterized Trigger plugin 2.16
Jenkins Email Extension Plugin 2.24.1
Jenkins GIT plugin 1.1.25
Change Log History 1.3
Jenkins Environment File Plugin 1.2
Slave Monitor for system load average 1.2
Jenkins Version Column plugin 0.2
Dump Info BuildWrapper Plugin 1.1
Claim Plugin 1.7
Sidebar Link 1.6
Hudson Setenv Plugin 1.1
Priority Sorter 1.3
Job Import Plugin 1.0
Project Health Report 1.2
Periodic Reincarnation of failed jobs 1.0
Run Condition Plugin 0.10
Jenkins SSH Slaves plugin 0.21
Build Keeper Plugin 1.3
Multiline Views TabBar Plugin 1.1
Performance plugin 1.8
Rebuild Plugin 1.15
Favorite 1.13
xUnit plugin 1.50
Hudson Build-Publisher plugin 1.13
Jenkins build log file size checker plugin 1.0
Jenkins disk-usage plugin 0.18
Monitoring 1.41.0
Hudson global-build-stats plugin 1.3
build-metrics 1.0
Jenkins Job Configuration History Plugin 1.13
Drop Down ViewsTabBar Plugin 1.6
Jenkins build timeout plugin 1.11
Project statistics Plugin 0.4
Fortify 360 Plugin 2.4
Keyboard Shortcuts Plugin 1.2
Bulk Builder 1.5
Downstream build view 1.8
View Job Filters 1.22
Description Column Plugin 1.3
Nested View Plugin 1.9
Jenkins Throttle Concurrent Builds Plug-in 1.7.2
Jenkins Workspace Cleanup Plugin 0.10
scripttrigger 0.21
excludeMatrixParent 1.1
Extra Columns Plugin 1.6
Timestamper 1.3.2
Jenkins Translation Assistance plugin 1.10
Labeled Test Groups Publisher 1.2.7-SNAPSHOT (private build)
Retry Failed Builds 1.1
Thread Dump Action Plugin 1.0
Jenkins SLOCCount Plug-in 1.8
Configuration Slicing plugin 1.36
AnchorChain 1.0
Jenkins promoted builds plugin 2.8
HTML Publisher plugin 1.0
built-on-column 1.1
Copy Artifact Plugin 1.25
Job Poll Action Plugin 1.0
Still seeing this, and have verified that it is not necessarily caused by a PermGen memory issue. Likely need to open a new JIRA issue for this. My main symptom is persistent failures from all builds on a slave, with exception of the form:
java.io.InvalidClassException: hudson.FilePath$FileCallableWrapper; local class incompatible: stream classdesc
Also seeing:
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.jvnet.hudson.Windows$MEMORYSTATUSEX
Restarting the slave always seems to clear the issue.
Is a timeout during a diskspace monitoring attempt leaving a class in an unitialized state perhaps?
17-Nov-2012 09:18:16 hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Failed to monitor lonws10509 for Free Swap Space
java.io.IOException: Remote call on lonws10509 failed
at hudson.remoting.Channel.call(Channel.java:673)
at hudson.node_monitors.SwapSpaceMonitor$1.monitor(SwapSpaceMonitor.java:83)
at hudson.node_monitors.SwapSpaceMonitor$1.monitor(SwapSpaceMonitor.java:81)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.jvnet.hudson.Windows$MEMORYSTATUSEX
at org.jvnet.hudson.Windows.monitor(Windows.java:40)
at hudson.node_monitors.SwapSpaceMonitor$MonitorTask.call(SwapSpaceMonitor.java:113)
at hudson.node_monitors.SwapSpaceMonitor$MonitorTask.call(SwapSpaceMonitor.java:99)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at hudson.remoting.Engine$1$1.run(Engine.java:60)
at java.lang.Thread.run(Thread.java:619)
Exception in thread "Monitoring lonws10894-psft_prd for Free Disk Space" java.lang.reflect.UndeclaredThrowableException
at hudson.remoting.$Proxy6.fetch2(Unknown Source)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:122)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getDeclaredMethod(Class.java:1935)
at java.io.ObjectStreamClass.getInheritableMethod(ObjectStreamClass.java:1349)
at java.io.ObjectStreamClass.access$2200(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:448)
at java.security.AccessController.doPrivileged(Native Method)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:413)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
at hudson.remoting.UserRequest._serialize(UserRequest.java:155)
at hudson.remoting.UserRequest.serialize(UserRequest.java:164)
at hudson.remoting.UserRequest.perform(UserRequest.java:126)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:287)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at hudson.remoting.Engine$1$1.run(Engine.java:60)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:127)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:160)
... 27 more
Exception in thread "Monitoring lonws10894-psft_prd for Free Temp Space" java.lang.reflect.UndeclaredThrowableException
at hudson.remoting.$Proxy6.fetch2(Unknown Source)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:122)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getDeclaredMethod(Class.java:1935)
at java.io.ObjectStreamClass.getInheritableMethod(ObjectStreamClass.java:1349)
at java.io.ObjectStreamClass.access$2200(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:448)
at java.security.AccessController.doPrivileged(Native Method)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:413)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
at hudson.remoting.UserRequest._serialize(UserRequest.java:155)
at hudson.remoting.UserRequest.serialize(UserRequest.java:164)
at hudson.remoting.UserRequest.perform(UserRequest.java:126)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:287)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at hudson.remoting.Engine$1$1.run(Engine.java:60)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:127)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:160)
... 27 more
I am seeing this during the start process, when the slaves are coming online (we have approx 20 slaves). So I also suspect it may be related to the slaves.
My server is on Centos6, but the startup messages are similar:
Summary:
============
1) a bunch of 'xxx monitoring activity is still in progress. Interrupting' messages
2) a bunch of 'Node monitoring someslave for xxx aborted' messages w/InterruptedExceptions
3) a few warnings of the form WARNING: Failed to monitor someslave for XXX – due to IOException: remote file operation failed – due to failed to deserialize the Callable object
followed by
4) WARNING: Failed to monitor someslave for XXX – due to InvalidClassException: ... local class incompatible: stream classdesc serialVersionUID
Details:
============
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record <init>
WARNING: Previous Architecture monitoring activity still in progress. Interrupting
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record <init>
WARNING: Previous Clock Difference monitoring activity still in progress. Interrupting
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record <init>
...etc ...
WARNING: Previous Clock Difference monitoring activity still in progress. Interrupting
Nov 21, 2012 8:02:00 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Node monitoring slave1 for Architecture aborted.
java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:146)
at hudson.remoting.Channel.call(Channel.java:665)
at hudson.node_monitors.ArchitectureMonitor$DescriptorImpl.monitor(ArchitectureMonitor.java:43)
at hudson.node_monitors.ArchitectureMonitor$DescriptorImpl.monitor(ArchitectureMonitor.java:40)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Node monitoring master for Response Time aborted.
java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedNanos(AbstractQueuedSynchronizer.java:1024)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1303)
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:227)
at java.util.concurrent.FutureTask.get(FutureTask.java:91)
at hudson.remoting.LocalChannel$2.get(LocalChannel.java:81)
at hudson.node_monitors.ResponseTimeMonitor$1.monitor(ResponseTimeMonitor.java:60)
at hudson.node_monitors.ResponseTimeMonitor$1.monitor(ResponseTimeMonitor.java:52)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Node monitoring slave2 for Free Swap Space aborted.
...etc...
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Node monitoring slave2 for Free Disk Space aborted.
java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:146)
at hudson.remoting.Channel.call(Channel.java:665)
at hudson.FilePath.act(FilePath.java:841)
at hudson.FilePath.act(FilePath.java:825)
at hudson.node_monitors.DiskSpaceMonitor$1.getFreeSpace(DiskSpaceMonitor.java:71)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:169)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:49)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Failed to monitor slave3 for Free Temp Space
hudson.util.IOException2: remote file operation failed: /scratch/jslave at hudson.remoting.Channel@557d2390:slave3
at hudson.FilePath.act(FilePath.java:848)
at hudson.FilePath.act(FilePath.java:825)
at hudson.node_monitors.TemporarySpaceMonitor$1.getFreeSpace(TemporarySpaceMonitor.java:73)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:169)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:49)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Caused by: java.io.IOException: Remote call on slave3 failed
at hudson.remoting.Channel.call(Channel.java:674)
at hudson.FilePath.act(FilePath.java:841)
... 5 more
Caused by: java.lang.Error: Failed to deserialize the Callable object.
at hudson.remoting.UserRequest.perform(UserRequest.java:104)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.reflect.UndeclaredThrowableException
at $Proxy5.fetch2(Unknown Source)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:122)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getDeclaredMethod(Class.java:1935)
at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1382)
at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:438)
at java.security.AccessController.doPrivileged(Native Method)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:413)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:547)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at hudson.remoting.UserRequest.deserialize(UserRequest.java:182)
at hudson.remoting.UserRequest.perform(UserRequest.java:98)
... 8 more
Caused by: java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:146)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:160)
... 33 more
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Failed to monitor slave3 for Free Temp Space
hudson.util.IOException2: remote file operation failed: /scratch/jslave at hudson.remoting.Channel@557d2390:slave3
at hudson.FilePath.act(FilePath.java:848)
at hudson.FilePath.act(FilePath.java:825)
at hudson.node_monitors.TemporarySpaceMonitor$1.getFreeSpace(TemporarySpaceMonitor.java:73)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:169)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:49)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Caused by: java.io.IOException: Remote call on slave3 failed
at hudson.remoting.Channel.call(Channel.java:674)
at hudson.FilePath.act(FilePath.java:841)
... 5 more
Caused by: java.lang.Error: Failed to deserialize the Callable object.
at hudson.remoting.UserRequest.perform(UserRequest.java:104)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.reflect.UndeclaredThrowableException
at $Proxy5.fetch2(Unknown Source)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:122)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getDeclaredMethod(Class.java:1935)
at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1382)
at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:438)
at java.security.AccessController.doPrivileged(Native Method)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:413)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:547)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at hudson.remoting.UserRequest.deserialize(UserRequest.java:182)
at hudson.remoting.UserRequest.perform(UserRequest.java:98)
... 8 more
Caused by: java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:146)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:160)
... 33 more
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Failed to monitor slave3 for Free Temp Space
hudson.util.IOException2: remote file operation failed: /scratch/jslave at hudson.remoting.Channel@557d2390:slave3
at hudson.FilePath.act(FilePath.java:848)
at hudson.FilePath.act(FilePath.java:825)
at hudson.node_monitors.TemporarySpaceMonitor$1.getFreeSpace(TemporarySpaceMonitor.java:73)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:169)
at hudson.node_monitors.DiskSpaceMonitorDescriptor.monitor(DiskSpaceMonitorDescriptor.java:49)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Caused by: java.io.IOException: Remote call on slave3 failed
at hudson.remoting.Channel.call(Channel.java:674)
at hudson.FilePath.act(FilePath.java:841)
... 5 more
Caused by: java.lang.Error: Failed to deserialize the Callable object.
at hudson.remoting.UserRequest.perform(UserRequest.java:104)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.reflect.UndeclaredThrowableException
at $Proxy5.fetch2(Unknown Source)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:122)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getDeclaredMethod(Class.java:1935)
at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1382)
at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:438)
at java.security.AccessController.doPrivileged(Native Method)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:413)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:547)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at hudson.remoting.UserRequest.deserialize(UserRequest.java:182)
at hudson.remoting.UserRequest.perform(UserRequest.java:98)
... 8 more
Caused by: java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:146)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:160)
... 33 more
Nov 21, 2012 8:02:01 PM hudson.slaves.CommandLauncher launch
INFO: slave agent launched for slave2
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record <init>
WARNING: Previous Free Swap Space monitoring activity still in progress. Interrupting
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Node monitoring slave2 for Free Swap Space aborted.
java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:146)
at hudson.remoting.Channel.call(Channel.java:665)
at hudson.node_monitors.SwapSpaceMonitor$1.monitor(SwapSpaceMonitor.java:83)
at hudson.node_monitors.SwapSpaceMonitor$1.monitor(SwapSpaceMonitor.java:81)
at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:219)
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run
WARNING: Failed to monitor slave3 for Free Swap Space
java.io.InvalidClassException: hudson.node_monitors.SwapSpaceMonitor$MonitorTask; local class incompatible: stream classdesc serialVersionUID = 1, local class serialVersionUID = 1184166703664094906
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at hudson.remoting.UserRequest.deserialize(UserRequest.java:182)
at hudson.remoting.UserRequest.perform(UserRequest.java:98)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Nov 21, 2012 8:02:01 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record <init>
WARNING: Previous Free Temp Space monitoring activity still in progress. Interrupting
I should clarify, in case it is relevant – I normally dont restart all of the slaves every time I restart the master. In this case all the slaves were already running their listener processes. In this repro process, I restarted only the master.
I can consistently repro this issue every time I restart the master.
Still happening with Jenkins 1.492
Having the same issue here, but do not have envinject plugin installed at all.
Have found that restarting the affected slave temporarily prevents the error.
Suspect that your "fix" actually works similarly due to the restart when removing the plugin.
My only suspect cause is a minor difference in the JVM versions between master (1.6.0_26) and slave (1.6.0_21)