Quartz 1.6.0 Release Notes
This release contains significant new features, bug fixes and improvements to Quartz.
See the changelog below for complete details of this release.
Most Significant of New Features
- JMS Integration. Some JMS-related features (such as a send-message job) are now included with Quartz. This feature set will increase over the next few releases of Quartz.
- Utility classes BroadcastSchedulerLister, FilterAndBroadcastJobListener, FilterAndBroadcastTriggerListener, and JobChainingJobListener
Other Key Changes
- Improvements to efficiency in several areas of the codebase.
- A Trigger is now not "acquired" by the scheduler until there is a thread available (in the ThreadPool) to execute it. This will lead to improved load balancing within a clustered setup, as well as other benefits.
- Ability to specify a locking semaphore implementation when using JDBC JobStore.
- Convenience classes JobListenerSupport, SchedulerListenerSupport, TriggerListenerSupport.
- Many more!
Core API changes
- Introduced Trigger.setPriority(int)
Migration Notes
Necessary Code Changes
| Version |
Description |
Old Code |
New Code |
| 1.5.x |
no changes necessary |
|
|
RAMJobStore users should be wary about the changes made for bug QUARTZ-107
- if your code was written properly, there's nothing to worry about, but if you improperly relied on mutating a job or trigger without restoring them, your code will now be broken.
Necessary Database Changes (if using JDBC-JobStore)
| Version |
Description |
update command(s) |
| 1.5.x |
Add "priority" column to the "qrtz_fired_triggers" table. This example update SQL is for Oracle. Make sure you use the appropriate data type for your database, which can be found in the tables_xxx.sql file for your db. You should leave the value of this new column NULL for existing rows. |
alter table qrtz_fired_triggers add PRIORITY NUMBER(13) |
| 1.5.x |
Add "priority" column to the "qrtz_triggers" table. This example update SQL is for Oracle. Make sure you use the appropriate data type for your database, which can be found in the tables_xxx.sql file for your db. You should leave the value of this new column NULL for existing rows. |
alter table qrtz_triggers add PRIORITY NUMBER(13) |
| 1.5.x |
Migrate existing trigger entries to have default priority. |
update qrtz_triggers set PRIORITY = 5 where PRIORITY IS NULL
update qrtz_fired_triggers set PRIORITY = 5 where PRIORITY IS NULL |
Changelog