Just to add to this, as I recently had the same issue.
You can log a case with support and they will look to remove ghost jobs.. however. This article provides some explanation and code that can be run in developer console. I suggest trying this first (if you are happy to delete all jobs) as it is quicker than going through support. This article solved my problem where i had the error:
This schedulable class has jobs pending or in progress
- Make sure to read the article first.
- Running this code will delete ALL scheduled jobs in the organization
- You will need to reschedule all jobs manually after running this
- If you are unsure of the impact of this, please contact your internal development team
- If you wish to use ScheduleJob ID instead of cronTrigger ID to abort the job using System.AbortJob() use API version 32.0 or below
Code to execute:
List<CronTrigger> listCronTrigger = [select Id, CronExpression, EndTime, NextFireTime, OwnerId,
PreviousFireTime, StartTime, State, TimesTriggered, TimeZoneSidKey from CronTrigger
where State = 'Waiting' or State='Running'];
System.debug('No of jobs: '+listCronTrigger.size());
If (listCronTrigger.size() > 0)
for (Integer i = 0; i < listCronTrigger.size(); i++)
System.debug('Job details ::'+String.valueOf(listCronTrigger[i]));