Enum DefaultMisfireHandling
- Namespace
- Quartz
- Assembly
- Quartz.dll
The misfire instruction a scheduler gives every trigger whose own instruction nobody stated, in a vocabulary every trigger family shares.
public enum DefaultMisfireHandling
Fields
DoNothing = 3Skip the missed firings and wait for the next scheduled one.
FireAndProceed = 2Fire once now, then go on with the schedule.
IgnoreMisfires = 1Never evaluate the trigger for a misfire: fire it as soon as it can, and once for every firing it missed.
SmartPolicy = 0The family's smart policy, which is what every trigger did before there was a default.
Remarks
Instruction codes are per family — 1 is FireNow to a simple trigger and
FireAndProceed to a cron one — so the default is stated here and mapped to each family's own
instruction when a trigger is scheduled:
| Default | Simple; cron, calendar-interval, daily-time-interval and recurrence |
|---|---|
| SmartPolicy | SmartPolicy; SmartPolicy |
| IgnoreMisfires | IgnoreMisfires; IgnoreMisfires |
| FireAndProceed | FireNow; FireAndProceed |
| DoNothing | NextWithRemainingCount; DoNothing |
A simple trigger has no exact match for the last two. FireNow fires once now, and on a
repeating trigger re-anchors the remaining repeats at now, which is NowWithRemainingCount.
NextWithRemainingCount waits for the next scheduled time and counts the missed firings as
fired, so the series still ends where it would have; a one-shot trigger that misfires under it never
fires. A trigger type of your own is in none of the families and keeps its own smart policy.
Only an unstated instruction takes the default. Every WithMisfireInstruction, every
assignment of MisfireInstructionCode, a trigger read from a job store or deserialized, the
MisfireInstruction of a [CronTrigger] or [SimpleTrigger] and of the JSON
schedule all state it — SmartPolicy included, which then stays the smart policy. The default
is resolved when ScheduleJob, ScheduleJobs, ScheduleTrigger or
RescheduleJob stores the trigger, so the stored instruction is always explicit and an older
node reads the same number.