Bugzilla will be upgraded to version 5.0 on a still to be determined date in the near future. The original upgrade date has been delayed.
Bug 587754 - upgrading from 1.1.0 caused server log exceptions due to classloader issues
upgrading from 1.1.0 caused server log exceptions due to classloader issues
Status: CLOSED CURRENTRELEASE
Product: RHQ Project
Classification: Other
Component: Core Server (Show other bugs)
1.2.1
All Linux
low Severity medium (vote)
: ---
: ---
Assigned To: Joseph Marques
Rajan Timaniya
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-04-30 15:24 EDT by Joseph Marques
Modified: 2010-08-12 12:58 EDT (History)
1 user (show)

See Also:
Fixed In Version: 2.4
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-08-12 12:58:07 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Joseph Marques 2010-04-30 15:24:47 EDT
Description of problem:

* 1.1.0 was released Oct 2008
* ClusterManagerJob was renamed to CloudManagerJob in Dec 2008
* StartupServlet has no mechanism for removing Jobs that no longer exist, it only knows how to reschedule them (to accommodate changes in their frequency or delay)

Version-Release number of selected component (if applicable):

1.1.0

Steps to Reproduce:
1. Install 1.1.0
2. Upgrade to 1.3.0
3. Tail server log
  
Actual results:

Server log will report the following...

2010-04-30 09:09:55,207 ERROR [org.quartz.impl.jdbcjobstore.JobStoreCMT] MisfireHandler: Error handling misfires: Couldn't store trigger 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob' for 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob' job:No ClassLoaders found for: org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob
org.quartz.JobPersistenceException: Couldn't store trigger 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob' for 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob' job:No ClassLoaders found for: org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob [See nested exception: java.lang.ClassNotFoundException: No ClassLoaders found for: org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob]
       at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeTrigger(JobStoreSupport.java:1246)
       at org.quartz.impl.jdbcjobstore.JobStoreSupport.doUpdateOfMisfiredTrigger(JobStoreSupport.java:1014)
       at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverMisfiredJobs(JobStoreSupport.java:956)
       at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3126)
       at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.manage(JobStoreSupport.java:3887)
       at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.run(JobStoreSupport.java:3907)
Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob
       at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:306)
       at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:521)
       at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:415)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
       at org.quartz.simpl.InitThreadContextClassLoadHelper.loadClass(InitThreadContextClassLoadHelper.java:75)
       at org.quartz.simpl.CascadingClassLoadHelper.loadClass(CascadingClassLoadHelper.java:119)
at org.quartz.impl.jdbcjobstore.StdJDBCDelegate.selectJobDetail(StdJDBCDelegate.java:897)
       at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeTrigger(JobStoreSupport.java:1202)
       ... 5 more 

Expected results:

Server startup should be fine, no errors should be reported

Additional info:

Temporary workaround for customers would be to remove these stale entries from the Quartz tables by executing the following SQL against their database:

DELETE FROM rhq_qrtz_triggers WHERE trigger_name = 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob';

DELETE FROM rhq_qrtz_simple_triggers WHERE trigger_name = 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob';

DELETE FROM rhq_qrtz_job_details WHERE job_name = 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob';
Comment 1 Joseph Marques 2010-04-30 16:58:01 EDT
commit 56eb99b9dfc6029e54e887fd1d670af4377e65ef

remove references to deprecated job 'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob' upon server startup
Comment 2 Rajan Timaniya 2010-06-14 08:28:50 EDT
Verified on JON build# 210
(http://hudson-qe.rhq.rdu.redhat.com:8080/job/jon/210/)

Steps:
1) Install JON 2.1
2) Upgrade to JON 2.4 (JON build# 210)
3) Tail server log

Server startup fine without error/exception like:
ERROR [org.quartz.impl.jdbcjobstore.JobStoreCMT]
MisfireHandler: Error handling misfires: Couldn't store trigger
'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob' for
'org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob' job:No
ClassLoaders found for:
org.rhq.enterprise.server.scheduler.jobs.ClusterManagerJob
Comment 3 Corey Welton 2010-08-12 12:58:07 EDT
Mass-closure of verified bugs against JON.

Note You need to log in before you can comment on or make changes to this bug.