Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 370733

Summary: Hudson builds fail with attempted duplicate class definition for hudson/model/AbstractProject
Product: Community Reporter: Matt Heitz <mheitz>
Component: CI-JenkinsAssignee: Eclipse Webmaster <webmaster>
Status: CLOSED DUPLICATE QA Contact:
Severity: major    
Priority: P3 CC: alex.panchenko, denis.roy
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Matt Heitz CLA 2012-02-06 10:30:07 EST
See <https://hudson.eclipse.org/hudson/job/cbi-edt-nightly/487/>

------------------------------------------
Started by timer
Building remotely on hudson-slave1
hudson.util.IOException2: remote file operation failed: <https://hudson.eclipse.org/hudson/job/cbi-edt-nightly/ws/> at hudson.remoting.Channel@17e2c93c:hudson-slave1
		 at hudson.FilePath.act(FilePath.java:754)
		 at hudson.FilePath.act(FilePath.java:740)
		 at hudson.scm.CVSSCM.isUpdatable(CVSSCM.java:439)
		 at hudson.scm.CVSSCM.checkout(CVSSCM.java:310)
		 at hudson.model.AbstractProject.checkout(AbstractProject.java:1229)
		 at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:507)
		 at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:424)
		 at hudson.model.Run.run(Run.java:1367)
		 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
		 at hudson.model.ResourceController.execute(ResourceController.java:88)
		 at hudson.model.Executor.run(Executor.java:145)
Caused by: java.io.IOException: Remote call on hudson-slave1 failed
		 at hudson.remoting.Channel.call(Channel.java:659)
		 at hudson.FilePath.act(FilePath.java:747)
		 ... 10 more
Caused by: java.lang.LinkageError: loader (instance of  hudson/remoting/RemoteClassLoader): attempted  duplicate class definition for name: "hudson/model/AbstractProject"
		 at java.lang.ClassLoader.defineClass1(Native Method)
		 at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
		 at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
		 at java.lang.ClassLoader.defineClass(ClassLoader.java:466)
		 at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:151)
		 at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:131)
		 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.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:1583)
		 at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
		 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
		 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
		 at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
		 at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
		 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
		 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
		 at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
		 at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
		 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
		 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
		 at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
		 at hudson.remoting.UserRequest.deserialize(UserRequest.java:178)
		 at hudson.remoting.UserRequest.perform(UserRequest.java:98)
		 at hudson.remoting.UserRequest.perform(UserRequest.java:48)
		 at hudson.remoting.Request$2.run(Request.java:283)
		 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 java.lang.Thread.run(Thread.java:619)
Comment 1 Eclipse Webmaster CLA 2012-02-06 15:39:23 EST
I suspect this is related to the increase in executors.  I'll schedule Hudson for a restart, but that's a temporary fix.  

-M.
Comment 2 Matt Heitz CLA 2012-02-09 11:54:59 EST
It's working again.  Thanks.
Comment 3 Matt Heitz CLA 2012-02-10 09:14:32 EST
It's happening again, this time on Fastlane.  See https://hudson.eclipse.org/hudson/job/cbi-edt-nightly/503/
Comment 4 Alex Panchenko CLA 2012-06-06 03:28:29 EDT
And again:

CVS Polling Log

Started on Jun 6, 2012 3:00:30 AM
FATAL: remote file operation failed: /opt/users/hudsonbuild/workspace/dltk-nightly at hudson.remoting.Channel@ee8bd13:hudson-slave1
hudson.util.IOException2: remote file operation failed: /opt/users/hudsonbuild/workspace/dltk-nightly at hudson.remoting.Channel@ee8bd13:hudson-slave1
	at hudson.FilePath.act(FilePath.java:754)
	at hudson.FilePath.act(FilePath.java:740)
	at hudson.scm.CVSSCM.isUpdatable(CVSSCM.java:439)
	at hudson.scm.CVSSCM.compareRemoteRevisionWith(CVSSCM.java:397)
	at hudson.scm.SCM._compareRemoteRevisionWith(SCM.java:354)
	at hudson.scm.SCM.poll(SCM.java:371)
	at hudson.model.AbstractProject.poll(AbstractProject.java:1347)
	at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:430)
	at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:459)
	at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:118)
	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 java.lang.Thread.run(Thread.java:619)
Caused by: java.io.IOException: Remote call on hudson-slave1 failed
	at hudson.remoting.Channel.call(Channel.java:659)
	at hudson.FilePath.act(FilePath.java:747)
	... 15 more
Caused by: java.lang.LinkageError: loader (instance of  hudson/remoting/RemoteClassLoader): attempted  duplicate class definition for name: "hudson/model/AbstractProject"
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:466)
	at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:151)
	at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:131)
	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.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:1583)
	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
	at hudson.remoting.UserRequest.deserialize(UserRequest.java:178)
	at hudson.remoting.UserRequest.perform(UserRequest.java:98)
	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
	at hudson.remoting.Request$2.run(Request.java:283)
	... 6 more
Comment 5 Alex Panchenko CLA 2012-06-06 03:38:33 EDT
The same error at https://hudson.eclipse.org/hudson/job/dltk-nightly/100/console
Comment 6 Eclipse Webmaster CLA 2012-06-06 10:03:47 EDT
I'll have to re-start the slave, but it's pretty busy.

-M.
Comment 7 Eclipse Webmaster CLA 2012-06-06 14:13:10 EDT
I've restarted slave1, let me know if the issue persists.

-M.
Comment 8 Alex Panchenko CLA 2012-06-06 15:40:12 EDT
It still doesn't work.
Comment 9 Denis Roy CLA 2013-10-18 16:33:27 EDT

*** This bug has been marked as a duplicate of bug 366672 ***