MisfireHandler: Error handling misfires: Couldn't store trigger: com.dotmarketing.sitesearch.job.SiteSearchJobProxy

3,070 views
Skip to first unread message

Matthew McLarty

unread,
Feb 28, 2013, 10:27:29 AM2/28/13
to dot...@googlegroups.com
I think we have an old trigger in our database that's trying to run a site search index job. We recently upgraded our site from 1.9.5 to 2.2 and I keep seeing this in our logs.

[28/02/13 09:14:40:494 EST] ERROR quartz.DotJobStore: MisfireHandler: Error handling misfires: Couldn't store trigger: com.dotmarketin
g.sitesearch.job.SiteSearchJobProxy
org.quartz.JobPersistenceException: Couldn't store trigger: com.dotmarketing.sitesearch.job.SiteSearchJobProxy [See nested exception:
java.lang.ClassNotFoundException: com.dotmarketing.sitesearch.job.SiteSearchJobProxy]
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeTrigger(JobStoreSupport.java:1182)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.doUpdateOfMisfiredTrigger(JobStoreSupport.java:950)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverMisfiredJobs(JobStoreSupport.java:898)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3029)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.manage(JobStoreSupport.java:3789)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.run(JobStoreSupport.java:3809)
Caused by: java.lang.ClassNotFoundException: com.dotmarketing.sitesearch.job.SiteSearchJobProxy
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
        at org.quartz.simpl.InitThreadContextClassLoadHelper.loadClass(InitThreadContextClassLoadHelper.java:74)
        at org.quartz.simpl.CascadingClassLoadHelper.loadClass(CascadingClassLoadHelper.java:118)
        at org.quartz.impl.jdbcjobstore.StdJDBCDelegate.selectJobDetail(StdJDBCDelegate.java:897)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeTrigger(JobStoreSupport.java:1138)
        ... 5 more


How do I get rid of the old job?

Maria Ahues Bouza

unread,
Feb 28, 2013, 11:24:42 AM2/28/13
to dot...@googlegroups.com
These are the tables where we store the jobs, you can clean them up

delete from qrtz_excl_cron_triggers where trigger_name = 'JOBNAME_trigger';

delete from qrtz_excl_triggers where trigger_name = 'JOBNAME_trigger';

delete from qrtz_excl_job_details where job_name = 'JOBNAME';


--
You received this message because you are subscribed to the Google Groups "dotCMS User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dotcms+un...@googlegroups.com.
To post to this group, send email to dot...@googlegroups.com.
Visit this group at http://groups.google.com/group/dotcms?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
Community Manager

dotCMS
Main: 305.900.2001
Fax: 305.397.2579
www.dotcms.com
http://www.twitter.com/dotCMS
http://www.facebook.com/dotCMS
http://www.twitter.com/mabouza

Please consider the planet before printing this email.

Matthew McLarty

unread,
Feb 28, 2013, 3:03:38 PM2/28/13
to dot...@googlegroups.com
Thank you, Maria. These scripts helped me to find the trigger and remove it.

--
You received this message because you are subscribed to a topic in the Google Groups "dotCMS User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/dotcms/sSIh5eD8FTU/unsubscribe?hl=en.
To unsubscribe from this group and all its topics, send an email to dotcms+un...@googlegroups.com.

deep2...@gmail.com

unread,
Dec 7, 2015, 8:33:09 AM12/7/15
to dotCMS User Group, ma...@dotcms.com
Hi Maria, thanks! is there any way in which quartz can automatically handle this? That is if the misfired job is deleted then it should get automatically unscheduled?

Will Ezell

unread,
Dec 7, 2015, 8:57:18 AM12/7/15
to dot...@googlegroups.com
Add the job scheduler portlet to your admin tools and you can delete stale jobs from there.

Visit this group at http://groups.google.com/group/dotcms.
For more options, visit https://groups.google.com/d/optout.



--






3059 Grand Avenue
Suite 410-B
Miami FL 33133
Main: 
305-900-2001 | Direct: 978.294.9429

   

deep jain

unread,
Dec 8, 2015, 2:00:28 PM12/8/15
to dot...@googlegroups.com
yes, that is a good option, i was just wondering if quartz provides anything to handle deleted jobs. Thanks!

--
You received this message because you are subscribed to a topic in the Google Groups "dotCMS User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/dotcms/sSIh5eD8FTU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to dotcms+un...@googlegroups.com.

Rajnish Tiwari

unread,
Feb 11, 2019, 12:01:24 PM2/11/19
to dotCMS User Group
I was also facing the same issue and I have done the following code changes.

    if(scheduler.checkExists(job.getKey())) {
    scheduler.clear();
}
In that way it will clear the existing logs, which causes the exception due to already entry exists.
In this way I am able to fix this issue.

Nathan Keiter

unread,
Feb 13, 2019, 8:52:00 AM2/13/19
to dot...@googlegroups.com
What class did you override? Where did you place this code?


Nathan I. Keiter | Lead Network Applications Programmer | Benefits Advisory Council Member | I.D.E.A Council Member
Gettysburg College | Information Technology | DataSystems
Campus Box 2453 | 300 North Washington Street | Gettysburg, PA 17325
Phone: 717.337.6993
https://www.gettysburg.edu
________________________________
From: dot...@googlegroups.com <dot...@googlegroups.com> on behalf of Rajnish Tiwari <rajnisht...@gmail.com>
Sent: Monday, February 11, 2019 1:13 AM
To: dotCMS User Group
Subject: [dotcms] Re: MisfireHandler: Error handling misfires: Couldn't store trigger: com.dotmarketing.sitesearch.job.SiteSearchJobProxy

CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
________________________________
I was also facing the same issue and I have done the following code changes.

if(scheduler.checkExists(job.getKey())) {
scheduler.clear();
}
In that way it will clear the existing logs, which causes the exception due to already entry exists.
In this way I am able to fix this issue.



On Thursday, February 28, 2013 at 8:57:29 PM UTC+5:30, Matthew McLarty wrote:
I think we have an old trigger in our database that's trying to run a site search index job. We recently upgraded our site from 1.9.5 to 2.2 and I keep seeing this in our logs.

[28/02/13 09:14:40:494 EST] ERROR quartz.DotJobStore: MisfireHandler: Error handling misfires: Couldn't store trigger: com.dotmarketin
g.sitesearch.job.SiteSearchJobProxy
org.quartz.JobPersistenceException: Couldn't store trigger: com.dotmarketing.sitesearch.job.SiteSearchJobProxy [See nested exception:
java.lang.ClassNotFoundException: com.dotmarketing.sitesearch.job.SiteSearchJobProxy]
at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeTrigger(JobStoreSupport.java:1182<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fJobStoreSupport.java%3a1182&c=E,1,7ulCwW0YvqAe3CzWhWf6Z07BwCfmkfQdTMagdQb9TNN4lhbEZ5K1eoMblyw92JSWFzRUmEkMA7aQsUllpQehmqo6gSW0my4sBJ7jBT6AvzcH&typo=1>)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.doUpdateOfMisfiredTrigger(JobStoreSupport.java:950<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fJobStoreSupport.java%3a950&c=E,1,6ya0bb0FVPB62s1nMY-hGOD_HjF8rwhEaCI9wW7n8svEfazLMx1y8vo_O-oKkc-PXkawjNNTcVYXmpiP3jUrF5BepM6N6kZSM3monIVdYuO9TRiN7EHFkxiYNQ,,&typo=1>)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverMisfiredJobs(JobStoreSupport.java:898<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fJobStoreSupport.java%3a898&c=E,1,3bHbND5wYGhpHkRcqH2T1jFkYOic_GbvhR3jdWnHdyzt6etxNVe0g6wHPUhY72C8mlPMtjR9neoptchMq-h60yDZpnwlHumbHm_QwTlo9OQUO7xi&typo=1>)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3029<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fJobStoreSupport.java%3a3029&c=E,1,yhoF4cRUfvjFhgPcGIo9wMj9fFiOr0RPyOghb44mbenhT_aGeijbwSFqFHQrTapr7i7HaT6sMmqPaXHxUoxse29kesEnljDJ7AzYwlekDRJdrFa6AUbJ34ksH75Z&typo=1>)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.manage(JobStoreSupport.java:3789<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fJobStoreSupport.java%3a3789&c=E,1,TKWFGUl-aqi1hgvXAS4PVUWsdiAiNAyS5d0M4TxVWXPOsoQxQLgoT4Bub-Z3GSrNLK7qe3Yq_GEgOm4x31DV4xyHj98HWsw_9DCTnrEPo8Ju7tFQc6gOTTKJLg,,&typo=1>)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.run<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fMisfireHandler.run&c=E,1,-GEucWsMHD88aFhAsU-SDtLG9b5xrY18Xva9fVLnmmohocjQpGov6yDAfH25k5NG9SFE6VBA03DQQEeE1WnNui4IMHkw6lxFFrXLoDfDQKaLlt0vu4w,&typo=1>(JobStoreSupport.java:3809<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fJobStoreSupport.java%3a3809&c=E,1,Yo_leqfU5GlvXzStgQJv-x8dBA7ykdMzQvnwpazIAhwDwWRif2W5DBGoCdrJzCvhaBE_nbszIdjAkEXNAzYd3tTOJiu49Dhi35iYF0pcdus,&typo=1>)
Caused by: java.lang.ClassNotFoundException: com.dotmarketing.sitesearch.job.SiteSearchJobProxy
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fWebappClassLoader.java%3a1516&c=E,1,8RW8MalUyzcwUKi1cVwbfOyNYnF5xj9bVX39qcJcAXwgWKwYduiO-bLnUmXmxx-TJ5b9kFfzO18BD8m58QQXCLkSk-T8KtnlwYmlA9qVzRMiEk3u-xKCPP8,&typo=1>)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fWebappClassLoader.java%3a1361&c=E,1,dnu6sr8e4wYhmVs_GP_s6Mn5uAVCJPdcQ3XsM-9VtTV-uQF9gMzadUbmCEqLKEjYnTDKTD0LexyDSGEZlQxU3UwsgnXM4_QJ_1vbmzNEqfJwqLsCK_ZNq7w,&typo=1>)
at org.quartz.simpl.InitThreadContextClassLoadHelper.loadClass(InitThreadContextClassLoadHelper.java:74<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fer.java%3a74&c=E,1,hO6d8PBnEiSw1h3KqsU5MfPgrPbWUzKgBO2Ic_v0Z9oCRWKCr73nhnWH3DFkgd2zD8hf8S5A8PTyGfPT5dBj6qKnmILfjeVkWG3BpbFyVfmL&typo=1>)
at org.quartz.simpl.CascadingClassLoadHelper.loadClass(CascadingClassLoadHelper.java<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fCascadingClassLoadHelper.java&c=E,1,fTc2yJnl-0KZF1xnP12RJjSZbHSnVgG-5ni_64y5IG8sKnTjUPnFr9a_5pe99a58r2Jkpxlx91SEE9gvOBchAHkUj8w7nqB8uwNK2ARCiKQxLfaK&typo=1>:118)
at org.quartz.impl.jdbcjobstore.StdJDBCDelegate.selectJobDetail(StdJDBCDelegate.java:897<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fStdJDBCDelegate.java%3a897&c=E,1,dk2_1I9r7MJ_AUz2LxFBwnlYQU2b4ysvgowsNzqrawuB8Pw0zh-H3PhQ3kGG6Xk2W4rabiw9SN6c0BI2T7E5bQtdLWq9R8ibGmrOmF2UHyTJ31avuXfy&typo=1>)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeTrigger(JobStoreSupport.java:1138<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fJobStoreSupport.java%3a1138&c=E,1,AnWNdDTcJLT8zzK8DAvG0lnxEaJjWdHdxUOcIv9ELyVbvVMOcG1CYSd_lRS4P5uxgyBCQmhqYWLVdzfKH1c_amrFN90gqv1dqskjR5zTajfRAq8rOJdJA2c_WeYs&typo=1>)
... 5 more


How do I get rid of the old job?

--
http://dotcms.com<https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fdotcms.com&c=E,1,ZPt7FyQr6Zh3EnvUo81mQiQGXv0LlQVDF16eZccwHhsO2tSw7Lx4XaJnfxF0PPyHWZ-boVoOkmO4gH8bpV2WukfAhzvIY5Eh5Rt1HdwNv-cEAw0,&typo=1> - Open Source Java Content Management
---
You received this message because you are subscribed to the Google Groups "dotCMS User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dotcms+un...@googlegroups.com<mailto:dotcms+un...@googlegroups.com>.
To post to this group, send email to dot...@googlegroups.com<mailto:dot...@googlegroups.com>.
To view this discussion on the web visit https://groups.google.com/d/msgid/dotcms/e56f81eb-34ce-4764-98ac-ecc363599122%40googlegroups.com<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fgroups.google.com%2fd%2fmsgid%2fdotcms%2fe56f81eb-34ce-4764-98ac-ecc363599122%2540googlegroups.com%3futm_medium%3demail%26utm_source%3dfooter&c=E,1,mqR2prFeIa_LNVsPutePrhpUhgVqsUljOOCeFBgNha-XpgeSFXzOe5Kiyl-mZujOphoJsvnG2AUmWnVETg5Q01sOJNRU_p1J9Eop1HaEYfsIsQ,,&typo=1>.
For more options, visit https://groups.google.com/d/optout<https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fgroups.google.com%2fd%2foptout&c=E,1,WzhOWU6yHyfHItvKg9vF5LVN6ypc3Wp4nUWgswHhIdOtvY6fKt_ePT1JscgTc8LdN8AssLIcP7axSsAoOdsijLdU5IJFoMfs_cfiVE-GLt9yepPcOfKScGDrNxg,&typo=1>.

Rajnish Tiwari

unread,
Feb 14, 2019, 9:20:42 PM2/14/19
to dotCMS User Group
Can you post your code snippet, then it will be easier to suggest the fix.?


On Thursday, February 28, 2013 at 8:57:29 PM UTC+5:30, Matthew McLarty wrote:

Rajnish Tiwari

unread,
Feb 14, 2019, 9:23:23 PM2/14/19
to dotCMS User Group
To get rid of old job, there are basically two appraoches,
1. Truncate the data of jquartz related tables.
2. check the if the job exists then clear the cache as shown in the below code.

   if(scheduler.checkExists(job.getKey())) {
    scheduler.clear();


You can solve the issue either of the two approach,

Thanks,
Rajnish

On Thursday, February 28, 2013 at 8:57:29 PM UTC+5:30, Matthew McLarty wrote:
Reply all
Reply to author
Forward
0 new messages