But if that was the issue then we wouldn't see the issue when running on
the master I guess, but we do.
Den 7 apr 2014 17:58 skrev "Stephen Connolly" <
[email protected]>:

> because the channel is not hooked up to the überclassloader somehow... so
> when the class is called for on the remote end, it doesn't show up. I
> suspect some of the perf improvements in classloading are hitting long
> running slaves. If my theory is correct disconnecting and reconnecting the
> slave in question should clear the issue.
>
>
> On 7 April 2014 16:51, Sandell, Robert <[email protected]>wrote:
>
>> The only support contract I have is myself and my groovy script console J
>>
>>
>>
>> What baffles me is that the uberClassLoader can load the class, but the
>> build fails to.
>>
>>
>>
>>
>>
>>
>>
>> *Robert Sandell*
>>
>> *Sony Mobile Communications*
>>
>> Tel: +46 10 80 12721
>>
>> sonymobile.com
>>
>>
>>
>> *From:* [email protected] [mailto:
>> [email protected]] *On Behalf Of *Stephen Connolly
>> *Sent:* den 7 april 2014 17:05
>>
>> *To:* [email protected]
>> *Subject:* Re: Classloading issues between git and git-client plugins?!
>>
>>
>>
>> I have nothing jumping to mind... this looks like something to do with
>> remoting though... in other words the class is failing to load on the
>> remote classloader not Jenkins core's classloader itself.... which probably
>> points to Kohsuke as the best placed to comment. Robert, you could always
>> open a support ticket if you have a support contract with somebody... ;-)
>>
>>
>>
>> On 7 April 2014 15:57, Mark Waite <[email protected]> wrote:
>>
>> 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.
>>
>>
>>
>> --
>> 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.
>>
>
>  --
> 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.

<<inline: image001.png>>

Reply via email to