-
Bug
-
Resolution: Fixed
-
Critical
-
None
-
HideJenkins installed as native package on Ubuntu 14.04.
Java version:
java.runtime.name Java(TM) SE Runtime Environment
java.runtime.version 1.7.0_60-b19
java.specification.name Java Platform API Specification
java.specification.vendor Oracle Corporation
ShowJenkins installed as native package on Ubuntu 14.04. Java version: java.runtime.name Java(TM) SE Runtime Environment java.runtime.version 1.7.0_60-b19 java.specification.name Java Platform API Specification java.specification.vendor Oracle Corporation
-
Powered by SuggestiMate
After upgrading to Jenkins version 1.568 it can not start.
The following is the last entry in the log file no matter how long I wait.
Exception in thread "Thread-3" java.lang.ClassCircularityError: java/util/logging/LogRecord
at net.bull.javamelody.LoggingHandler.publish(LoggingHandler.java:109)
at java.util.logging.Logger.log(Logger.java:616)
at java.util.logging.Logger.doLog(Logger.java:641)
at java.util.logging.Logger.log(Logger.java:730)
at winstone.Logger.logInternal(Logger.java:157)
at winstone.Logger.log(Logger.java:165)
Stopping Jenkins again and deleting file ./plugins/monitoring.jpi and folder ./plugins/monitoring/ allows me to get Jenkins running again, so that can work as a workaround
[JENKINS-23442] Jenkins 1.568 can not start when monitoring plugin is installed
It was probably 1.50.0, I had to remove it to be able to work. But please resolve case if you can not reproduce with current Jenkins version and latest plugin version.
OK, so I resolve as can not reproduce. Please reopen if you reproduce.
My test was with monitoring plugin v1.51 and Jenkins 1.568.
I think that your issue was something "temporary", since many users probably have the same versions as you.
Hi magnayn.
Try stopping the Jenkins service, then cd into ${JENKINS_HOME}/plugins and remove the file monitoring.jpi as well as monitoring directory.
Then start Jenkins, and reinstall monitoring plugin.
Report back your findings, then evernat get's something to work with. If you can send him your Jenkins log, it may be usefull too.
Reproduced on Ubuntu 14.04, Jenkins 1.574 + latest monitoring plugin
After installing the monitoring plugin, Jenkins does not complete startup as described above.
Removing the plugin fixes.
I use Oracle java version 1.7.0_65-b17
Can this be reproduced with Jenkins out of the box, only installing this plugin? I can't on CentOS, but maybe you can?
If not, would be interesting if anyone experiencing this could provide a full list of plugins installed. (Go to /systemInfo and scroll down.)
These are my installed plugins:
saferestart Safe Restart Plugin 0.3
description-setter description setter plugin 1.9
jquery jQuery plugin 1.7.2-1
analysis-core Static Analysis Utilities 1.57
javadoc Javadoc Plugin 1.2
htmlpublisher HTML Publisher plugin 1.3
xunit xUnit plugin 1.90
pam-auth PAM Authentication plugin 1.1
warnings Warnings Plug-in 4.40
parameterized-trigger Parameterized Trigger plugin 2.25
ci-game Continuous Integration game 1.20
clover Clover plugin 4.4.0
antisamy-markup-formatter OWASP Markup Formatter Plugin 1.2
ant Ant Plugin 1.2
matrix-auth Matrix Authorization Strategy Plugin 1.2
jobConfigHistory Job Configuration History Plugin 2.8
github GitHub plugin 1.9.1
subversion Subversion Plug-in 2.4.1
token-macro Token Macro Plugin 1.10
external-monitor-job External Monitor Job Type Plugin 1.2
ws-cleanup Workspace Cleanup Plugin 0.22
matrix-project Matrix Project Plugin 1.3
cvs CVS Plug-in 2.12
covcomplplot Coverage/Complexity Scatter Plot PlugIn 1.1.1
disk-usage disk-usage plugin 0.24
log-parser Log Parser Plugin 1.0.8
git-client GIT client plugin 1.10.1
scm-api SCM API Plugin 0.2
build-keeper-plugin Build Keeper Plugin 1.3
checkstyle Checkstyle Plug-in 3.39
text-finder TextFinder plugin 1.10
windows-slaves Windows Slaves Plugin 1.0
maven-plugin Maven Integration plugin 2.6
ssh-credentials SSH Credentials Plugin 1.8
nodelabelparameter Node and Label parameter plugin 1.5.1
mapdb-api MapDB API Plugin 1.0.1.0
git GIT plugin 2.2.4
github-api GitHub API Plugin 1.56
ssh-agent SSH Agent Plugin 1.5
jsunit JSUnit plugin 1.5
logging Logging Plugin 0.2.8
ghprb GitHub Pull Request Builder 1.14
tasks Task Scanner Plug-in 4.39
ssh-slaves SSH Slaves plugin 1.6
ansicolor AnsiColor 0.4.0
multiple-scms Multiple SCMs plugin 0.3
violations Violations plugin 0.7.11
ircbot IRC Plugin 2.25
ldap LDAP Plugin 1.10.2
run-condition Run Condition Plugin 1.0
translation Translation Assistance plugin 1.11
ssh SSH plugin 2.4
instant-messaging instant-messaging plugin 1.29
jslint Box UK - JSLint 0.8.2
credentials Credentials Plugin 1.16.1
violation-columns Violation Columns(List View Columns) 1.6
mailer Mailer Plugin 1.10
Parameterized-Remote-Trigger Parameterized Remote Trigger Plugin 2.1.3
Does this issue still occur?
Is Jenkins running standalone or in a container?
Which Java version, OS, Jenkins version, Monitoring plugin, specifically?
Does the same issue occur on the same OS, Java version when run standalone on a new Jenkins home directory, with only Monitoring plugin installed?
I've hit this. Jenkins version 1.596.2. Nuking the monitoring plugin lets jenkins start up.
If I then attempt to install the monitoring plugin (1.55.0) from the plugin manager with "Download now and install after restart", Jenkins will never start back up after restart. This is what my startup log looks like:
Running from: /opt/jenkins-war/jenkins-1.596.2.war webroot: System.getProperty("JENKINS_HOME") Apr 10, 2015 11:33:13 AM winstone.Logger logInternal INFO: Beginning extraction from war file Apr 10, 2015 11:33:14 AM org.eclipse.jetty.util.log.JavaUtilLog info INFO: jetty-winstone-2.8 Apr 10, 2015 11:33:15 AM org.eclipse.jetty.util.log.JavaUtilLog info INFO: NO JSP Support for , did not find org.apache.jasper.servlet.JspServlet Jenkins home directory: /space/jenkins_instances/support found at: System.getProperty("JENKINS_HOME") Apr 10, 2015 11:33:16 AM org.eclipse.jetty.util.log.JavaUtilLog info INFO: Started SelectChannelConnector@0.0.0.0:18007 Apr 10, 2015 11:33:16 AM org.eclipse.jetty.util.log.JavaUtilLog info INFO: Started Ajp13SocketConnector@0.0.0.0:19007 Apr 10, 2015 11:33:16 AM org.eclipse.jetty.util.log.JavaUtilLog info INFO: AJP13 is not a secure protocol. Please protect port 19007 Apr 10, 2015 11:33:16 AM winstone.Logger logInternal INFO: Winstone Servlet Engine v2.0 running: controlPort=disabled Apr 10, 2015 11:33:17 AM jenkins.InitReactorRunner$1 onAttained INFO: Started initialization Apr 10, 2015 11:33:17 AM jenkins.InitReactorRunner$1 onAttained INFO: Listed all plugins Apr 10, 2015 11:33:18 AM org.jvnet.hudson.plugins.m2release.M2ReleaseBuildWrapper$DescriptorImpl <clinit> INFO: Using new style Permission with PermissionScope Apr 10, 2015 11:33:18 AM de.pellepelster.jenkins.walldisplay.WallDisplayPlugin loadConfiguration INFO: Loaded configuration data: de.pellepelster.jenkins.walldisplay.Configuration@4b22b775[ theme=default jenkinsTimeOut=15 jenkinsUpdateInterval=20 showDetails=false showGravatar=false fontFamily=sans-serif buildRange=all sortOrder=job name showWeatherReport=<null> showJunitResults=<null> maxQueuePositionToShow=0 gravatarUrl=<null> ] log4j:WARN No appenders could be found for logger (net.bull.javamelody). log4j:WARN Please initialize the log4j system properly. Exception in thread "pool-5-thread-1" java.lang.ClassCircularityError: java/util/logging/LogRecord at net.bull.javamelody.LoggingHandler.publish(LoggingHandler.java:109) at java.util.logging.Logger.log(Logger.java:610) at java.util.logging.Logger.doLog(Logger.java:631) at java.util.logging.Logger.log(Logger.java:720) at jenkins.InitReactorRunner$1.onTaskFailed(InitReactorRunner.java:71) at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onTaskFailed(ReactorListener.java:99) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) Apr 10, 2015 11:33:40 AM org.eclipse.jetty.util.log.JavaUtilLog warn WARNING: /static/0c6a5c26/scripts/prototype.js java.lang.ClassCircularityError: java/util/logging/LogRecord at net.bull.javamelody.LoggingHandler.publish(LoggingHandler.java:109) [...]
By comparison, a successful startup (after removing the plugin again) shows
[...] Apr 10, 2015 11:36:14 AM de.pellepelster.jenkins.walldisplay.WallDisplayPlugin loadConfiguration INFO: Loaded configuration data: de.pellepelster.jenkins.walldisplay.Configuration@5ae856b5[ theme=default jenkinsTimeOut=15 jenkinsUpdateInterval=20 showDetails=false showGravatar=false fontFamily=sans-serif buildRange=all sortOrder=job name showWeatherReport=<null> showJunitResults=<null> maxQueuePositionToShow=0 gravatarUrl=<null> ] Apr 10, 2015 11:36:14 AM jenkins.InitReactorRunner$1 onAttained INFO: Prepared all plugins [...]
Oracle java version 1.7.0_25. For reference, I'm managing about 45 jenkins instances, all on the same machine and JDK version (with assorted different jenkins version/plugin lists). I'm only having this issue with one of them.
aidanhs Please provide all the information I asked for last year.
Can this be reproduced with Jenkins out of the box, only installing this plugin? I can't on CentOS, but maybe you can?
If not, would be interesting if anyone experiencing this could provide a full list of plugins installed. (Go to /systemInfo and scroll down.)
Is Jenkins running standalone or in a container?
Which Java version, OS, Jenkins version, Monitoring plugin, specifically?
Does the same issue occur on the same OS, Java version when run standalone on a new Jenkins home directory, with only Monitoring plugin installed?
In your specific case it would be helpful if you mentioned what's different about that one machine from all the other ones.
Without preventing you to give info, it can be noted that the monitoring plugin currently bundles the slf4j-api:
https://github.com/jenkinsci/monitoring-plugin/blob/master/pom.xml#L49
Sl4j-api is in theory not related to java.util.logging, but I can build a specific version without that if you want to make a test.
(Or you can remove WEB-INF/lib/slf4j-api-1.6.3.jar by yourself from the monitoring.hpi file with a zip manager and then uninstall / reinstall.)
I have the same issue.
I was running Jenkins 1.609.1 and then when I upgraded to 1.609.2.
I could only start Jenkins again after I removed monitoring plugin.
log4j:WARN No appenders could be found for logger (net.bull.javamelody).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "pool-6-thread-8" java.lang.ClassCircularityError: java/util/logging/LogRecord
at net.bull.javamelody.LoggingHandler.publish(LoggingHandler.java:109)
at java.util.logging.Logger.log(Logger.java:610)
at java.util.logging.Logger.doLog(Logger.java:631)
at java.util.logging.Logger.log(Logger.java:720)
at jenkins.InitReactorRunner$1.onTaskFailed(InitReactorRunner.java:71)
at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onTaskFailed(ReactorListener.java:99)
at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214)
at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
As said above, the monitoring plugin currently bundles the slf4j-api.
Can you try a new build of the monitoring plugin without the slf4j-api?
monitoring.hpi is attached and is the same as v1.56 except slf4j-api.
You can install it in your Jenkins with Manage Jenkins / Manage plugins / Advanced / Upload plugin.
I tried the attached monitoring.hpi file with Jenkins 1.618. Unfortunately the problem and the exception remains.
After reading JENKINS-27669, perhaps it is needed to preload the java.util.logging.LogRecord class, before net.bull.javamelody.LoggingHandler.publish(...) is called.
@jbrejner A possible cause triggering the issue for you may be that you have also the "Logging plugin" installed.
Code changed in jenkins
User: evernat
Path:
src/main/java/org/jvnet/hudson/plugins/monitoring/PluginImpl.java
http://jenkins-ci.org/commit/monitoring-plugin/0ad60da0038048ca69672022e54434cb3c5c87a3
Log:
try to fix JENKINS-23442 (ClassCircularityError: java/util/logging/LogRecord)
The code changed in the plugin is a tentative fix without having reproduced the issue myself.
So, I would like a confirmation from a user before saying that it is fixed.
To everyone:
You can test the fix by downloading a nightly build here:
https://javamelody.ci.cloudbees.com/job/jenkins%20plugin/ws/target/monitoring.hpi
It seems to be working for us, we had the same problem before. And now, after installing the snapshot it doesn't hang anymore (and we can acess /monitoring)
I do not reproduce the issue using Jenkins 1.568.
Which version of the monitoring plugin do you use?