[JIRA] [findbugs] (JENKINS-18394) IncompatibleClassChangeError after upgrade to 1.519

2013-06-19 Thread chr...@med-access.net (JIRA)














































Chris Lee
 commented on  JENKINS-18394


IncompatibleClassChangeError after upgrade to 1.519















Cleaned the slave (wiped out the entire home directory, as if it was a new ssh-slave), with no effect.



























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







-- 
You received this message because you are subscribed to the Google Groups Jenkins Issues group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




[JIRA] [findbugs] (JENKINS-18394) IncompatibleClassChangeError after upgrade to 1.519

2013-06-18 Thread chr...@med-access.net (JIRA)














































Chris Lee
 created  JENKINS-18394


IncompatibleClassChangeError after upgrade to 1.519















Issue Type:


Bug



Affects Versions:


current



Assignee:


Ulli Hafner



Components:


findbugs



Created:


18/Jun/13 10:31 PM



Description:


Below exception occurs on every build following upgrade to 1.519:


[FINDBUGS] Collecting findbugs analysis files...
ERROR: Publisher hudson.plugins.findbugs.FindBugsPublisher aborted due to exception
hudson.util.IOException2: remote file operation failed: /data/jenkins/workspace/EMR_450 at hudson.remoting.Channel@15f6059:devbuild01

at hudson.FilePath.act(FilePath.java:901)
at hudson.FilePath.act(FilePath.java:878)
at hudson.plugins.findbugs.FindBugsPublisher.perform(FindBugsPublisher.java:161)
at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:146)
at hudson.plugins.analysis.core.HealthAwareRecorder.perform(HealthAwareRecorder.java:331)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:776)
at hudson.model.Build$BuildExecution.post2(Build.java:183)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:726)
at hudson.model.Run.execute(Run.java:1618)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:242)
Caused by: java.io.IOException: Remote call on devbuild01 failed
at hudson.remoting.Channel.call(Channel.java:731)
at hudson.FilePath.act(FilePath.java:894)
... 13 more
Caused by: java.lang.IncompatibleClassChangeError: Implementing class
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at hudson.remoting.RemoteClassLoader$ClassLoaderProxy.fetch4(RemoteClassLoader.java:705)
at hudson.remoting.RemoteClassLoader$ClassLoaderProxy.fetch3(RemoteClassLoader.java:759)
at sun.reflect.GeneratedMethodAccessor52.invoke(Unknown Source)
at 

[JIRA] [findbugs] (JENKINS-18394) IncompatibleClassChangeError after upgrade to 1.519

2013-06-18 Thread chr...@med-access.net (JIRA)














































Chris Lee
 commented on  JENKINS-18394


IncompatibleClassChangeError after upgrade to 1.519















...downgrading to 1.518 resolves the issue.



























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







-- 
You received this message because you are subscribed to the Google Groups Jenkins Issues group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




[JIRA] (JENKINS-13844) Emulate clean checkout by... does not work with 1.7 subversion repositories

2012-09-30 Thread chr...@med-access.net (JIRA)














































Chris Lee
 commented on  JENKINS-13844


Emulate clean checkout by... does not work with 1.7 subversion repositories















No.  There is more to this issue than just the ignored files.

Here's a test case from a simple Jenkins / SVN (Jenkins 1.483, SVN 1.7):

After wiping out the workspace and running an initial build:

[root@devemr01 UTIL_TRUNK]# ll
total 24
drwxrwxr-x 10 jenkins jenkins 4096 Sep 30 00:06 build
-rw-rw-r--  1 jenkins jenkins  376 Sep 30 00:06 build.gradle
drwxrwxr-x  2 jenkins jenkins 4096 Sep 30 00:06 lib
drwxrwxr-x  2 jenkins jenkins 4096 Sep 30 00:06 releng
-rw-rw-r--  1 jenkins jenkins   37 Sep 30 00:06 settings.gradle
drwxrwxr-x  4 jenkins jenkins 4096 Sep 30 00:06 src


...adding an unversioned file:

[root@devemr01 UTIL_TRUNK]# touch foo
[root@devemr01 UTIL_TRUNK]# svn status
?   foo


Running the job (note that the unversioned file wasn't detected or removed):


00:07:59 Cleaning up /home/jenkins/workspace/UTIL_TRUNK/.
00:07:59 Updating svn://svn.ma.net/util/trunk to revision '2012-09-30T00:07:58.927 -0700'
00:07:59 At revision 38394


...and the unversioned file, and the ignored dir 'build', are still present:

[root@devemr01 UTIL_TRUNK]# ll
total 24
drwxrwxr-x 10 jenkins jenkins 4096 Sep 30 00:06 build
-rw-rw-r--  1 jenkins jenkins  376 Sep 30 00:06 build.gradle
-rw-r--r--  1 rootroot   0 Sep 30 00:07 foo
drwxrwxr-x  2 jenkins jenkins 4096 Sep 30 00:06 lib
drwxrwxr-x  2 jenkins jenkins 4096 Sep 30 00:06 releng
-rw-rw-r--  1 jenkins jenkins   37 Sep 30 00:06 settings.gradle
drwxrwxr-x  4 jenkins jenkins 4096 Sep 30 00:06 src
[root@devemr01 UTIL_TRUNK]#


It appears that the SVNKit 'status' API call is working differently (and possibly incorrectly) for SVN 1.7 repositories.



























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






[JIRA] (JENKINS-13844) Emulate clean checkout by... does not work with 1.7 subversion repositories

2012-09-30 Thread chr...@med-access.net (JIRA)














































Chris Lee
 commented on  JENKINS-13844


Emulate clean checkout by... does not work with 1.7 subversion repositories
















Found the issue; the status objects returned by SVNKit have different values when used against a SVN 1.7 working copy. 

Using the original snippet of code, status objects are returned for the correct files, but their status is STATUS_NONE, and hence the subsequent logic for removing files of specific statuses is not triggered: 


/home/jenkins/workspace/UTIL_TRUNK/.gradlenone 
/home/jenkins/workspace/UTIL_TRUNK/foonone 
/home/jenkins/workspace/UTIL_TRUNK/build  none
 

Modifying the code to combine the node  contents status yields the correct results: 


/home/jenkins/workspace/UTIL_TRUNK/.gradle   ignored
Deleting /home/jenkins/workspace/UTIL_TRUNK/.gradle
/home/jenkins/workspace/UTIL_TRUNK/foo   unversioned
Deleting /home/jenkins/workspace/UTIL_TRUNK/foo
/home/jenkins/workspace/UTIL_TRUNK/build ignored


The relevant change is: 

// for SVN 1.7 working copies, status.getContentsStatus() is STATUS_NONE; need to use the combined status to get the correct status (UNVERSIONED, IGNORED, etc.) 
 SVNStatusType s = status.getCombinedNodeAndContentsStatus(); 
 //SVNStatusType s = status.getContentsStatus();
 

The complete test harness is: 


import java.io.File;

import java.util.*;
import org.tmatesoft.svn.core.SVNDepth;
import org.tmatesoft.svn.core.SVNException;
import org.tmatesoft.svn.core.wc.ISVNStatusHandler;
import org.tmatesoft.svn.core.wc.SVNClientManager;
import org.tmatesoft.svn.core.wc.SVNStatus;
import org.tmatesoft.svn.core.wc.SVNStatusType;
import org.tmatesoft.svn.core.wc.*;
import org.tmatesoft.svn.core.internal.wc.*;

public class Test
{
public static void main( String[] args ) throws SVNException
{
SVNClientManager clientManager = SVNClientManager.newInstance();

CollectionString changeLists = Collections.emptyList();
//clientManager.getStatusClient().doStatus( new File( args[ 0 ] ).getAbsoluteFile(), SVNRevision.WORKING, SVNDepth.INFINITY, false, false, true, false, new ISVNStatusHandler()
clientManager.getStatusClient().doStatus( new File( args[ 0 ] ), null, SVNDepth.INFINITY, false, false, true, false, new ISVNStatusHandler()
{
@Override
public void handleStatus( SVNStatus status ) throws SVNException
{
// for SVN 1.7 working copies, status.getContentsStatus() is STATUS_NONE; need to use the combined status to get the correct status (UNVERSIONED, IGNORED, etc.)
SVNStatusType s = status.getCombinedNodeAndContentsStatus();
//SVNStatusType s = status.getContentsStatus();

System.out.printf( "%-60s %s\n", status.getFile(), s );
if( s == SVNStatusType.STATUS_UNVERSIONED || s == SVNStatusType.STATUS_IGNORED || s == SVNStatusType.STATUS_MODIFIED )
{
System.out.println( "Deleting " + status.getFile() );
}
}
}, null );
}
}




























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






[JIRA] (JENKINS-13859) Emulate clean check out seems to fail after upgrading to v1.4 of subversion plugin

2012-09-30 Thread chr...@med-access.net (JIRA)














































Chris Lee
 commented on  JENKINS-13859


Emulate clean check out seems to fail after upgrading to v1.4 of subversion plugin















The solution for this (requires a code change) is detailed in JENKINS-13844



























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






[JIRA] (JENKINS-13844) Emulate clean checkout by... does not work with 1.7 subversion repositories

2012-09-29 Thread chr...@med-access.net (JIRA)














































Chris Lee
 commented on  JENKINS-13844


Emulate clean checkout by... does not work with 1.7 subversion repositories















This is caused by changes in SVN 1.7 relating to ignored files - they are no longer reported by default in 'svn status' (the SVNKit API used by Jenkins mirrors this behaviour). 

In the workspace for a Jenkins project (after the job has run), no changes are shown:


[root@devemr01 UTIL_TRUNK]# svn status


However, the below command shows files/directories that are marked as ignored:

[root@devemr01 UTIL_TRUNK]# svn status --no-ignore
I   .gradle
I   build


...and creating a new file that isn't ignored shows up in 'svn status':


[root@devemr01 UTIL_TRUNK]# touch foo
[root@devemr01 UTIL_TRUNK]# svn status
?   foo



UpdateWithCleanUpdater.java needs to explicitly request that SVNKit include 'ignored' files such that they can be deleted.



























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






[JIRA] (JENKINS-13844) Emulate clean checkout by... does not work with 1.7 subversion repositories

2012-09-29 Thread chr...@med-access.net (JIRA)














































Chris Lee
 commented on  JENKINS-13844


Emulate clean checkout by... does not work with 1.7 subversion repositories
















Code from UpdateWithCleanUpdater.java:


clientManager.getStatusClient().doStatus(local, null, SVNDepth.INFINITY, false, false, true, false, new ISVNStatusHandler() {
public void handleStatus(SVNStatus status) throws SVNException {
SVNStatusType s = status.getContentsStatus();
if (s == SVNStatusType.STATUS_UNVERSIONED || s == SVNStatusType.STATUS_IGNORED || s == SVNStatusType.STATUS_MODIFIED) {
listener.getLogger().println("Deleting "+status.getFile());
try {
File f = status.getFile();
if (f.isDirectory())
hudson.Util.deleteRecursive(f);
else
f.delete();
} catch (IOException e) {
throw new SVNException(SVNErrorMessage.create(SVNErrorCode.UNKNOWN, e));
}
}
}
}, null);


...the fifth parameter is 'includeIgnored' which is strangely set to false (and always has been), although the subsequent code expects ignored elements. Guessing that the inclusion of 'ignored' files was a bug with previous SVN (and SVNKit) versions that Jenkins inadvertently relied on.

SVNKit API: http://svnkit.com/javadoc/org/tmatesoft/svn/core/wc/SVNStatusClient.html#doStatus(java.io.File, org.tmatesoft.svn.core.wc.SVNRevision, org.tmatesoft.svn.core.SVNDepth, boolean, boolean, boolean, boolean, org.tmatesoft.svn.core.wc.ISVNStatusHandler, java.util.Collection)




























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