Comments (9)
I would say that adding it shouldn't be that big of a deal, pretty much similar to what Quartz has in other stores:
if (job.isConcurrentExectionDisallowed()) {
if (acquiredJobKeysForNoConcurrentExec.contains(jobKey)) {
excludedTriggers.add(tw);
continue; // go to next trigger in store.
} else {
acquiredJobKeysForNoConcurrentExec.add(jobKey);
}
// ...
if (job.isConcurrentExectionDisallowed()) {
ArrayList<TriggerWrapper> trigs = getTriggerWrappersForJob(job
.getKey());
Iterator<TriggerWrapper> itr = trigs.iterator();
while (itr.hasNext()) {
TriggerWrapper ttw = itr.next();
if (ttw.state == TriggerWrapper.STATE_WAITING) {
ttw.state = TriggerWrapper.STATE_BLOCKED;
}
if (ttw.state == TriggerWrapper.STATE_PAUSED) {
ttw.state = TriggerWrapper.STATE_PAUSED_BLOCKED;
}
timeTriggers.remove(ttw);
}
blockedJobs.add(job.getKey());
} else if (tw.trigger.getNextFireTime() != null) {
synchronized (lock) {
timeTriggers.add(tw);
}
}
/// etc
There is a plan to support pretty much everything that other stores support. I'll take a look, and check if I could do it perhaps in the end of next week. Maybe @michaelklishin is faster than I am.
But pull requests are always welcomed!
from quartz-mongodb.
We want to make the store as feature complete as we can. Feel free to submit a pull request that adds this feature.
from quartz-mongodb.
Cheers, will try. Though I'm not sure when I'll have time to dive into doing that tbh, as I'd need to get familiar more with Quartz' internals.
from quartz-mongodb.
any news on the job execution disallowed?
from quartz-mongodb.
If someone still needs this feature, feel free to submit pull requests.
from quartz-mongodb.
Haven't had the need for it
from quartz-mongodb.
I need this while I'm using axonframework with mongodb. Can someone help to add this feature in?
from quartz-mongodb.
@liougehooa you can contribute a feature you need. That's how open source works.
from quartz-mongodb.
Am thinking that this should be simpler than suggested by just using an additional lock for the job.
Also updating the insertion of the trigger lock to use FSYNCED (deleting the lock is OK left at JOURNAL_SAFE). This is required to guarantee the lock is 100% effective.
Am currently testing an implementation for this.
from quartz-mongodb.
Related Issues (20)
- Question: Release of 2.2.0 HOT 6
- Documentation fix
- Feature request or just a Q HOT 1
- Sunset of BinTray HOT 7
- No setter for property 'acquireTriggersWithinLock'
- maxConnections per host
- Release date for 2.2.0 HOT 1
- Repository now that bintray shut down ? HOT 9
- In DB, there is no change in trigger state. Always the trigger state is WAITING.
- Error when using high frequency trigger
- Acquiring locks from other application batch jobs
- POM gives 401 HOT 4
- Getting Forbidden while accessing https://dl.bintray.com/michaelklishin/maven/ HOT 3
- GSSAPI authMechanism
- pass spring boot mongdb client to Mongodb JobStore
- quartz-mongodb 2.2.0-rc2: checkInErrorHandler — something is missing HOT 4
- hi, got the same issue.
- Could not resolve com.novemberain:quartz-mongodb:2.2.0-rc2 HOT 1
- This project seems to be abandoned, is there a valid alternative? HOT 1
- I need you help,May I ask what caused it? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quartz-mongodb.