Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 368229 - After leaving my Hudson instance overnight Workspace clean-up thread throws a NoClassDefFoundError
Summary: After leaving my Hudson instance overnight Workspace clean-up thread throws a...
Status: CLOSED FIXED
Alias: None
Product: Hudson
Classification: Technology
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Winston Prakash CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-01-10 05:49 EST by Geoff Waymark CLA
Modified: 2012-01-13 09:47 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Geoff Waymark CLA 2012-01-10 05:49:54 EST
Build Identifier: #39 eclipse build

Exception in thread "Workspace clean-up thread" java.lang.NoClassDefFoundError:
com/sun/jna/TypeMapper
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoade
r.java:392)
        at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoade
r.java:363)
        at org.jruby.ext.posix.POSIXFactory$1.<init>(POSIXFactory.java:13)
        at org.jruby.ext.posix.POSIXFactory.<clinit>(POSIXFactory.java:12)
        at hudson.util.jna.PosixAPI.<clinit>(PosixAPI.java:32)
        at hudson.util.jna.JnaNativeUnixSupport.makeFileWritable(JnaNativeUnixSu
pport.java:133)
        at hudson.util.jna.NativeUtils.makeFileWritable(NativeUtils.java:206)
        at hudson.Util.makeWritable(Util.java:281)
        at hudson.Util.deleteFile(Util.java:228)
        at hudson.Util.deleteRecursive(Util.java:291)
        at hudson.FilePath$9.invoke(FilePath.java:822)
        at hudson.FilePath$9.invoke(FilePath.java:820)
        at hudson.FilePath.act(FilePath.java:754)
        at hudson.FilePath.act(FilePath.java:736)
        at hudson.FilePath.deleteRecursive(FilePath.java:820)
        at hudson.model.WorkspaceCleanupThread.delete(WorkspaceCleanupThread.jav
a:148)
        at hudson.model.WorkspaceCleanupThread.process(WorkspaceCleanupThread.ja
va:82)
        at hudson.model.WorkspaceCleanupThread.execute(WorkspaceCleanupThread.ja
va:69)
        at hudson.model.AsyncPeriodicWork$1.run(AsyncPeriodicWork.java:65)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.sun.jna.TypeMapper
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoade
r.java:401)
        at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoade
r.java:363)
        ... 29 more

Reproducible: Always

Steps to Reproduce:
1. Install Hudson
2. Create some simple jobs
3. Install following plugins
Hudson Disk Usage plugin
This plugin counts disk usage.
	1.0-SNAPSHOT (private-12/21/2011 10:33-hudson)
4. Leave overnight till the Workspace cleanup thread runs.
Comment 1 Winston Prakash CLA 2012-01-11 12:56:46 EST
Fixed. Fix is same as  Bug 368343.

Workspace clean up thread was invoked. The function makeFileWritable is not available for windows. So the fix is to guard the block on windows.
Comment 2 Geoff Waymark CLA 2012-01-13 09:47:09 EST
Tested on candidate build M0