Skip to content

A MongoDB-based store for Quartz. This fork supports different types of triggers and strives to be as feature complete as possible. Originally by MuleSoft.

License

Notifications You must be signed in to change notification settings

BenRomberg/quartz-mongodb

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A MongoDB-based store for Quartz.

This is a MongoDB-backed job store for the Quartz scheduler.

Maven Artifacts

Artifacts are released to clojars.org.

If you are using Maven, add the following repository definition to your pom.xml:

<repository>
  <id>clojars.org</id>
  <url>http://clojars.org/repo</url>
</repository>

The Most Recent Release

With Leiningen:

[com.novemberain/quartz-mongodb "1.8.0"]

With Maven:

<dependency>
  <groupId>com.novemberain</groupId>
  <artifactId>quartz-mongodb</artifactId>
  <version>1.8.0</version>
</dependency>

Usage

Set your Quartz properties to something like this:

# Use the MongoDB store
org.quartz.jobStore.class=com.novemberain.quartz.mongodb.MongoDBJobStore
# MongoDB URI (optional if 'org.quartz.jobStore.addresses' is set)
org.quartz.jobStore.mongoUri=mongodb://localhost:27020
# comma separated list of mongodb hosts/replica set seeds (optional if 'org.quartz.jobStore.mongoUri' is set)
org.quartz.jobStore.addresses=host1,host2
# database name
org.quartz.jobStore.dbName=quartz
# Will be used to create collections like mycol_jobs, mycol_triggers, mycol_calendars, mycol_locks
org.quartz.jobStore.collectionPrefix=mycol
# thread count setting is ignored by the MongoDB store but Quartz requries it
org.quartz.threadPool.threadCount=1

If you use Quartzite or want your job classes to be available to Clojure code, use:

org.quartz.jobStore.class=com.novemberain.quartz.mongodb.DynamicMongoDBJobStore

(this assumes Clojure jar is on classpath).

Limitations

This Quartz store strives to be feature complete but currently has limitations:

  • Clustering is not supported

Note that despite Quartz clustering not being supported it is perfectly possible to use Quartz MongoDB store with a MongoDB cluster.

Continuous Integration

Build Status

CI is hosted by Travis CI

Copyright & License

(c) Michael S. Klishin, Alex Petrov, 2011-2014.

Apache Public License 2.0

FAQ

Project Origins

The project was originally started by MuleSoft. It supports all Quartz trigger types and tries to be as feature complete as possible.

Why the Fork?

MuleSoft developers did not respond to attempts to submit pull requests for several months. As more and more functionality was added and implementation code refactored, I decided to completely separate this fork form GitHub forks network because the project is now too different from the original one. All changes were made with respect to the Apache Public License 2.0.

Bitdeli Badge

About

A MongoDB-based store for Quartz. This fork supports different types of triggers and strives to be as feature complete as possible. Originally by MuleSoft.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 67.2%
  • Clojure 32.8%