Unfortunately, I don't have any reasonable suggestions for further
techniques to debug the classloading issue.  I am hopeful that Kohsuke or
Jesse or Stephen have suggestions, since I think classloading is handled
deep in core, well below the layers of my comfort.

As far as I know, most of the jar file dependencies are "up to date" in the
git-client-plugin pom.xml and the git-plugin pom.xml.

There are two dependencies intentionally pointed at older versions.  The
"guava" dependency is kept at 11.0.01 because Jenkins core keeps its
version at 11.0.1.  The multiple-scms dependency is kept at 0.2 because
there is a known problem with the multiple-scms plugin 0.3.  Do you have
the multiple SCMs plugin installed?  Is it enabled?  Are you using it?

Mark Waite

Mark Waite


On Mon, Apr 7, 2014 at 8:44 AM, Sandell, Robert <
[email protected]> wrote:

> Yes those look like similar issues.
>
> Any thoughts on how I can continue to debug the issue?
>
> Few jobs on the currently affected masters use the git plugin, so I can
> keep them alive for a little bit more before I need to take drastic
> measures.
>
>
>
>
>
>
>
> *Robert Sandell*
>
> *Sony Mobile Communications*
>
> Tel: +46 10 80 12721
>
> sonymobile.com
>
>
>
> *From:* [email protected] [mailto:
> [email protected]] *On Behalf Of *Mark Waite
> *Sent:* den 4 april 2014 04:38
> *To:* [email protected]
> *Subject:* Re: Classloading issues between git and git-client plugins?!
>
>
>
> In case it helps, https://issues.jenkins-ci.org/browse/JENKINS-21520reports 
> something similar, though the investigation there has not shown any
> way to repeat the bug.
>
>
>
> Likewise https://issues.jenkins-ci.org/browse/JENKINS-20254 seems to be
> in a similar area.
>
>
>
> On Thu, Apr 3, 2014 at 9:19 AM, Mark Waite <[email protected]>
> wrote:
>
> It's the credentials plugin installed, and current, and enabled?
>
> There have been other reports of a class loader failure, but we have not
> been able to duplicate them.
>
> On Apr 3, 2014 9:00 AM, "Sandell, Robert" <[email protected]>
> wrote:
>
> Onto my next post LTS upgrade problem.
>
>
>
> Suddenly we see this stacktrace in build logs when the git plugin is
> fetching from the repository.
>
>
>
> Caused by: java.lang.NoClassDefFoundError:
> org.jenkinsci.plugins.gitclient.GitClient
>
>          at java.lang.Class.getDeclaredFields0(Native Method)
>
>          at java.lang.Class.privateGetDeclaredFields(Class.java:2397)
>
>          at java.lang.Class.getDeclaredField(Class.java:1946)
>
>          at
> java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1659)
>
>          at java.io.ObjectStreamClass.access$700(ObjectStreamClass.java:72)
>
>          at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:480)
>
>          at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:468)
>
>          at java.security.AccessController.doPrivileged(Native Method)
>
>          at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:468)
>
>          at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:365)
>
>          at
> java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:602)
>
>          at
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1622)
>
>          at
> java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
>
>          at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
>
>          at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
>
>          at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
>
>          at hudson.remoting.UserRequest.deserialize(UserRequest.java:182)
>
>          at hudson.remoting.UserResponse.retrieve(UserRequest.java:211)
>
>          at hudson.remoting.Channel.call(Channel.java:723)
>
>
>
> A similar stacktrace if we try to run the build on the master instead.
>
>
>
> We got this problem at one time when we first upgraded (everything), my
> first guess was that it was because of some library changes in git-client
> so we cleaned up some old hpi and jpi files and installed the previous
> micro version of git and git client, started Jenkins and it worked again.
>
> The other servers didn't have the problem when we upgraded them. But
> suddenly yesterday it happened in runtime. On Monday the git plugin worked
> and on Tuesday it didn't.
>
>
>
> I've tried some Groovy debugging with the following script:
>
>
>
> def gitClient = Jenkins.instance.pluginManager.getPlugin("git-client")
>
>
> println(gitClient.classLoader.findLoadedClass("org.jenkinsci.plugins.gitclient.GitClient"))
>
> //output: interface org.jenkinsci.plugins.gitclient.GitClient
>
>
> println(Jenkins.instance.pluginManager.uberClassLoader.findClass("org.jenkinsci.plugins.gitclient.GitClient"))
>
> //output: interface org.jenkinsci.plugins.gitclient.GitClient
>
>
>
> def gitPlugin = Jenkins.instance.pluginManager.getPlugin("git")
>
> println(gitPlugin.classLoader.findLoadedClass("hudson.plugins.git.GitSCM"))
>
> //output: class hudson.plugins.git.GitSCM
>
> println(Jenkins.instance.pluginManager.uberClassLoader.findClass("hudson.plugins.git.GitSCM"))
>
>
> //output: class hudson.plugins.git.GitSCM
>
>
> println(gitPlugin.classLoader.findLoadedClass("org.jenkinsci.plugins.gitclient.GitClient"))
>
> //output: interface org.jenkinsci.plugins.gitclient.GitClient
>
>
>
> def job = Jenkins.instance.getItem("Tools_GerritTester")
>
> println(job.getClass().getClassLoader().findLoadedClass("org.jenkinsci.plugins.gitclient.GitClient"))
>
>
> //output: null
>
> println(job.getClass().getClassLoader().findLoadedClass("hudson.plugins.git.GitSCM"))
>
>
> //output: null
>
>
> println(job.getScm().getClass().getClassLoader().findLoadedClass("org.jenkinsci.plugins.gitclient.GitClient"))
>
> //output: interface org.jenkinsci.plugins.gitclient.GitClient
>
>
>
>
>
> The output is the same whether I run it on a master with the problem or
> one that doesn't have it.
>
>
>
> Are there any other classloading scenarios that I've missed, or something
> else I can try to find the issue? I'd prefer to not just reboot and forget
> about it ;)
>
>
>
>
>
>
>
> *Robert Sandell*
>
> Staff Engineer
>
> Development Environment
>
> Software Environment and Product Configuration
>
>
>
> *Sony Mobile Communications*
>
> Tel: +46 10 80 12721
>
> [email protected] <[email protected]>
>
> sonymobile.com
>
>
>
> [image: Sony logotype_23px height_Email_144dpi]
>
>
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Jenkins Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>
>
>
>
>
> --
>
> Thanks!
>
> Mark Waite
>
> --
> You received this message because you are subscribed to the Google Groups
> "Jenkins Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Jenkins Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Thanks!
Mark Waite

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

<<inline: image001.png>>

Reply via email to