diff --git a/src/main/java/org/olat/admin/registration/SystemRegistrationJob.java b/src/main/java/org/olat/admin/registration/SystemRegistrationJob.java
index 3f412c2b2855c20d5c3a849ed83862122818583f..95d4b08171c847f348f1a698931578b7e6a3f2c0 100644
--- a/src/main/java/org/olat/admin/registration/SystemRegistrationJob.java
+++ b/src/main/java/org/olat/admin/registration/SystemRegistrationJob.java
@@ -26,6 +26,7 @@ package org.olat.admin.registration;
 
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -39,6 +40,7 @@ import org.quartz.JobExecutionException;
  * 
  * @author gnaegi
  */
+@DisallowConcurrentExecution
 public class SystemRegistrationJob extends JobWithDB {
 
 	/**
diff --git a/src/main/java/org/olat/commons/calendar/ImportCalendarJob.java b/src/main/java/org/olat/commons/calendar/ImportCalendarJob.java
index 8e6f2527213a9ebd73eac7ccd3f2bebd7e07270e..4210b2b7e8afa4ffb8155328a8b6a6209b7ce58e 100644
--- a/src/main/java/org/olat/commons/calendar/ImportCalendarJob.java
+++ b/src/main/java/org/olat/commons/calendar/ImportCalendarJob.java
@@ -27,9 +27,12 @@ package org.olat.commons.calendar;
 
 import java.util.Random;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.commons.calendar.manager.ImportToCalendarManager;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 
 /**
@@ -40,8 +43,10 @@ import org.quartz.JobExecutionContext;
  * Initial Date:  21 feb. 2011 <br>
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  */
+@DisallowConcurrentExecution
 public class ImportCalendarJob extends JobWithDB {
-	
+
+	private static final Logger log = Tracing.createLoggerFor(ImportCalendarJob.class);
 	private static final Random random = new Random();
 	
 	@Override
diff --git a/src/main/java/org/olat/core/commons/services/csp/manager/CSPLogCleanup.java b/src/main/java/org/olat/core/commons/services/csp/manager/CSPLogCleanup.java
index b25bf21f9e0d3ff6d2c4709c1156e369c00314c1..a4f35797e8852de9ec52c02894d0ef567fe3b449 100644
--- a/src/main/java/org/olat/core/commons/services/csp/manager/CSPLogCleanup.java
+++ b/src/main/java/org/olat/core/commons/services/csp/manager/CSPLogCleanup.java
@@ -22,6 +22,7 @@ package org.olat.core.commons.services.csp.manager;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.csp.CSPManager;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -31,6 +32,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class CSPLogCleanup extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/core/commons/services/doceditor/wopi/manager/WopiDeleteExpiredAccessJob.java b/src/main/java/org/olat/core/commons/services/doceditor/wopi/manager/WopiDeleteExpiredAccessJob.java
index 3442efcab1004243f4b94c064110b9715b0e899a..71b9a22a0d7c6e7e7299d50a2569074493728dff 100644
--- a/src/main/java/org/olat/core/commons/services/doceditor/wopi/manager/WopiDeleteExpiredAccessJob.java
+++ b/src/main/java/org/olat/core/commons/services/doceditor/wopi/manager/WopiDeleteExpiredAccessJob.java
@@ -23,6 +23,7 @@ import java.util.Date;
 
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -32,6 +33,7 @@ import org.quartz.JobExecutionException;
  * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class WopiDeleteExpiredAccessJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/core/commons/services/notifications/manager/EmailNotificationJob.java b/src/main/java/org/olat/core/commons/services/notifications/manager/EmailNotificationJob.java
index 0b6bf3904cdd309123eb502d2e009aa69e675187..f45971a9603c605840f77e6d41a395645e91ba96 100644
--- a/src/main/java/org/olat/core/commons/services/notifications/manager/EmailNotificationJob.java
+++ b/src/main/java/org/olat/core/commons/services/notifications/manager/EmailNotificationJob.java
@@ -26,6 +26,7 @@ package org.olat.core.commons.services.notifications.manager;
 
 import org.olat.core.commons.services.notifications.NotificationsManager;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -37,6 +38,7 @@ import org.quartz.JobExecutionException;
  * Initial Date:  09.09.2008 <br>
  * @author guido
  */
+@DisallowConcurrentExecution
 public class EmailNotificationJob extends JobWithDB {
 
 	
diff --git a/src/main/java/org/olat/core/commons/services/scheduler/DummyJob.java b/src/main/java/org/olat/core/commons/services/scheduler/DummyJob.java
index 86f4df9edbac7712e1f82c26c95c4ccb5e2c72a5..bb4fd926dcc49e77431420e0a0b5cd73e675c7cc 100644
--- a/src/main/java/org/olat/core/commons/services/scheduler/DummyJob.java
+++ b/src/main/java/org/olat/core/commons/services/scheduler/DummyJob.java
@@ -24,6 +24,9 @@
 */
 package org.olat.core.commons.services.scheduler;
 
+import org.apache.logging.log4j.Logger;
+import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -36,11 +39,11 @@ import org.quartz.JobExecutionException;
  * Initial Date:  09.09.2008 <br>
  * @author guido
  */
+@DisallowConcurrentExecution
 public class DummyJob extends JobWithDB {
+	
+	private static final Logger log = Tracing.createLoggerFor(DummyJob.class);
 
-	/**
-	 * @see org.springframework.scheduling.quartz.QuartzJobBean#executeInternal(org.quartz.JobExecutionContext)
-	 */
 	@Override
 	public void executeWithDB(JobExecutionContext arg0)
 	throws JobExecutionException {
diff --git a/src/main/java/org/olat/core/commons/services/scheduler/JobWithDB.java b/src/main/java/org/olat/core/commons/services/scheduler/JobWithDB.java
index 2e1c4f8bdfaca6cd27db0b33141227f0f8ad80c4..7a8f6750a8c39fbab1359e55090af0f6db99d64c 100644
--- a/src/main/java/org/olat/core/commons/services/scheduler/JobWithDB.java
+++ b/src/main/java/org/olat/core/commons/services/scheduler/JobWithDB.java
@@ -46,7 +46,7 @@ import org.springframework.scheduling.quartz.QuartzJobBean;
  */
 public abstract class JobWithDB extends QuartzJobBean {
 	// A logger instantiated for the immplementing class of this abstract class
-	protected final Logger log = Tracing.createLoggerFor(this.getClass());
+	private static final Logger log = Tracing.createLoggerFor(JobWithDB.class);
 	
 	@Override
 	protected final void executeInternal(JobExecutionContext arg0)
@@ -61,6 +61,7 @@ public abstract class JobWithDB extends QuartzJobBean {
 			success = true;
 		} catch(JobExecutionException e) {
 			// for documentation purpose only
+			log.error("", e);
 			throw e;
 		} finally {
 			//clean up logging
diff --git a/src/main/java/org/olat/core/commons/services/taskexecutor/manager/ExecutorJob.java b/src/main/java/org/olat/core/commons/services/taskexecutor/manager/ExecutorJob.java
index 8c869c21f6ad59c1453952206d919fbed9fe1318..e40dc4a191b594cf473d575659dea373089bb425 100644
--- a/src/main/java/org/olat/core/commons/services/taskexecutor/manager/ExecutorJob.java
+++ b/src/main/java/org/olat/core/commons/services/taskexecutor/manager/ExecutorJob.java
@@ -19,8 +19,10 @@
  */
 package org.olat.core.commons.services.taskexecutor.manager;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.olat.core.logging.Tracing;
 import org.quartz.JobExecutionContext;
 
 /**
@@ -32,6 +34,8 @@ import org.quartz.JobExecutionContext;
  *
  */
 public class ExecutorJob extends JobWithDB {
+
+	private static final Logger log = Tracing.createLoggerFor(ExecutorJob.class);
 	
 	@Override
 	public void executeWithDB(JobExecutionContext context) {
diff --git a/src/main/java/org/olat/core/dispatcher/mapper/manager/MapperZombieSlayerJob.java b/src/main/java/org/olat/core/dispatcher/mapper/manager/MapperZombieSlayerJob.java
index cbb9b529ff0dcf8e1fcae8e024894f61e457c54a..4387d4174a090e69583b9d138d625d48613597d3 100644
--- a/src/main/java/org/olat/core/dispatcher/mapper/manager/MapperZombieSlayerJob.java
+++ b/src/main/java/org/olat/core/dispatcher/mapper/manager/MapperZombieSlayerJob.java
@@ -22,6 +22,7 @@ package org.olat.core.dispatcher.mapper.manager;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.core.dispatcher.mapper.MapperService;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 
 /**
@@ -29,6 +30,7 @@ import org.quartz.JobExecutionContext;
  * 
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  */
+@DisallowConcurrentExecution
 public class MapperZombieSlayerJob extends JobWithDB  {
 
 	@Override
diff --git a/src/main/java/org/olat/course/assessment/manager/AssessmentModeNotificationJob.java b/src/main/java/org/olat/course/assessment/manager/AssessmentModeNotificationJob.java
index a7c6855229296fa5d0a3e7fe0e82e43c533a569f..bff1ff07ec5f9e2c61579d7bff39b2807d932200 100644
--- a/src/main/java/org/olat/course/assessment/manager/AssessmentModeNotificationJob.java
+++ b/src/main/java/org/olat/course/assessment/manager/AssessmentModeNotificationJob.java
@@ -23,6 +23,7 @@ import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -32,6 +33,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class AssessmentModeNotificationJob extends JobWithDB {
 	
 	private static final Logger logger = Tracing.createLoggerFor(AssessmentModeNotificationJob.class);
diff --git a/src/main/java/org/olat/course/statistic/UpdateStatisticsJob.java b/src/main/java/org/olat/course/statistic/UpdateStatisticsJob.java
index 259032d0e78818875f59966000a2edf8d93eba25..c13687b2f9624dda5eedf4b205007d2e9f393383 100644
--- a/src/main/java/org/olat/course/statistic/UpdateStatisticsJob.java
+++ b/src/main/java/org/olat/course/statistic/UpdateStatisticsJob.java
@@ -26,8 +26,11 @@ package org.olat.course.statistic;
 
 import java.util.Random;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -37,15 +40,14 @@ import org.quartz.JobExecutionException;
  * Initial Date:  12.02.2010 <br>
  * @author Stefan
  */
+@DisallowConcurrentExecution
 public class UpdateStatisticsJob extends JobWithDB {
+	
+	private static final Logger log = Tracing.createLoggerFor(UpdateStatisticsJob.class);
 
 	/** the logging object used in this class **/
 	private final Random random = new Random();
-	
-	/**
-	 * 
-	 * @see org.olat.core.commons.services.scheduler.JobWithDB#executeWithDB(org.quartz.JobExecutionContext)
-	 */
+
 	@Override
 	public void executeWithDB(JobExecutionContext arg0) throws JobExecutionException {
 		jitter();// wait 0 - 60 seconds
diff --git a/src/main/java/org/olat/ldap/LDAPUserSynchronizerJob.java b/src/main/java/org/olat/ldap/LDAPUserSynchronizerJob.java
index 978075c96b602fc6b52d930b4756366d53ede6ec..9b2204140e716256ecfa4ed38651a40352137eff 100644
--- a/src/main/java/org/olat/ldap/LDAPUserSynchronizerJob.java
+++ b/src/main/java/org/olat/ldap/LDAPUserSynchronizerJob.java
@@ -19,8 +19,11 @@
  */
 package org.olat.ldap;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -33,11 +36,12 @@ import org.quartz.JobExecutionException;
  * 
  * @author gnaegi
  */
+@DisallowConcurrentExecution
 public class LDAPUserSynchronizerJob extends JobWithDB {
 
-	/**
-	 * @see org.olat.core.commons.services.scheduler.JobWithDB#executeWithDB(org.quartz.JobExecutionContext)
-	 */
+	private static final Logger log = Tracing.createLoggerFor(LDAPUserSynchronizerJob.class);
+
+	@Override
 	public void executeWithDB(JobExecutionContext arg0)
 	throws JobExecutionException {
 		try {
diff --git a/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectCleanupJob.java b/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectCleanupJob.java
index f98bec7595552586e2de719894ba80c9f0d4a119..cd8995749d53d44ef36cfcfdc63129db9ab52abc 100644
--- a/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectCleanupJob.java
+++ b/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectCleanupJob.java
@@ -31,6 +31,7 @@ import org.olat.modules.adobeconnect.AdobeConnectManager;
 import org.olat.modules.adobeconnect.AdobeConnectMeeting;
 import org.olat.modules.adobeconnect.AdobeConnectModule;
 import org.olat.modules.adobeconnect.model.AdobeConnectErrors;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -40,6 +41,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class AdobeConnectCleanupJob extends JobWithDB {
 	
 	private static final Logger log = Tracing.createLoggerFor(AdobeConnectCleanupJob.class);
diff --git a/src/main/java/org/olat/modules/gotomeeting/manager/GoToRefreshJob.java b/src/main/java/org/olat/modules/gotomeeting/manager/GoToRefreshJob.java
index 43d7c2de47dbcd5d64e5b5c6ce424a458272166c..f4a524385435bc58517ee73617523b7f8df39d87 100644
--- a/src/main/java/org/olat/modules/gotomeeting/manager/GoToRefreshJob.java
+++ b/src/main/java/org/olat/modules/gotomeeting/manager/GoToRefreshJob.java
@@ -29,6 +29,7 @@ import org.olat.core.util.StringHelper;
 import org.olat.modules.gotomeeting.GoToMeetingManager;
 import org.olat.modules.gotomeeting.GoToMeetingModule;
 import org.olat.modules.gotomeeting.GoToOrganizer;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -38,6 +39,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class GoToRefreshJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/modules/lecture/manager/AutoCloseLecturesJob.java b/src/main/java/org/olat/modules/lecture/manager/AutoCloseLecturesJob.java
index 47aaad5a9cb7422f0500ca4c889840a68e4d85b6..e1038e3640d42046a13daa17a0598b435fdbd48f 100644
--- a/src/main/java/org/olat/modules/lecture/manager/AutoCloseLecturesJob.java
+++ b/src/main/java/org/olat/modules/lecture/manager/AutoCloseLecturesJob.java
@@ -23,6 +23,7 @@ import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.modules.lecture.LectureModule;
 import org.olat.modules.lecture.LectureService;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -32,6 +33,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class AutoCloseLecturesJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/modules/lecture/manager/ReminderLecturesJob.java b/src/main/java/org/olat/modules/lecture/manager/ReminderLecturesJob.java
index d5e323a1e021e69c71e6de8a76dceabe930bf555..0889118c186bba062ec80e449504c6a54b289049 100644
--- a/src/main/java/org/olat/modules/lecture/manager/ReminderLecturesJob.java
+++ b/src/main/java/org/olat/modules/lecture/manager/ReminderLecturesJob.java
@@ -22,6 +22,7 @@ package org.olat.modules.lecture.manager;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.modules.lecture.LectureService;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -32,6 +33,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class ReminderLecturesJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/modules/quality/manager/QualityJob.java b/src/main/java/org/olat/modules/quality/manager/QualityJob.java
index f258179eb3a751c5a050bff6de7f44a569ae9569..bb07d216c093f78f158b2bf188b2c31207f43704 100644
--- a/src/main/java/org/olat/modules/quality/manager/QualityJob.java
+++ b/src/main/java/org/olat/modules/quality/manager/QualityJob.java
@@ -27,6 +27,7 @@ import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.modules.quality.QualityModule;
 import org.olat.modules.quality.QualityService;
 import org.olat.modules.quality.generator.QualityGeneratorService;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -36,6 +37,7 @@ import org.quartz.JobExecutionException;
  * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class QualityJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/modules/reminder/manager/ReminderJob.java b/src/main/java/org/olat/modules/reminder/manager/ReminderJob.java
index dd571cce684a85afecd2196e288abe5050ff2966..77f5ea079878367ab63ffd19e9e05827cc07441d 100644
--- a/src/main/java/org/olat/modules/reminder/manager/ReminderJob.java
+++ b/src/main/java/org/olat/modules/reminder/manager/ReminderJob.java
@@ -23,6 +23,7 @@ import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.modules.reminder.ReminderModule;
 import org.olat.modules.reminder.ReminderService;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -32,6 +33,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class ReminderJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/modules/video/manager/VideoTranscodingJob.java b/src/main/java/org/olat/modules/video/manager/VideoTranscodingJob.java
index c7ec4395c0776314c44e4d94be8eac1b82d0575e..0e7e18b7c9578ce97418e41b7dee9ce13b8e2b4f 100644
--- a/src/main/java/org/olat/modules/video/manager/VideoTranscodingJob.java
+++ b/src/main/java/org/olat/modules/video/manager/VideoTranscodingJob.java
@@ -28,12 +28,14 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
+import org.apache.logging.log4j.Logger;
 import org.hibernate.ObjectDeletedException;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.persistence.DBFactory;
 import org.olat.core.commons.services.image.Size;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.core.commons.services.video.MovieService;
+import org.olat.core.logging.Tracing;
 import org.olat.core.util.StringHelper;
 import org.olat.core.util.vfs.LocalFileImpl;
 import org.olat.core.util.vfs.LocalFolderImpl;
@@ -54,7 +56,9 @@ import org.quartz.JobExecutionException;
  */
 @DisallowConcurrentExecution
 public class VideoTranscodingJob extends JobWithDB {
-	private ArrayList<String> resolutionsWithProfile = new ArrayList<>(Arrays.asList("1080", "720", "480"));
+	
+	private static final Logger log = Tracing.createLoggerFor(VideoTranscodingJob.class);
+	private final List<String> resolutionsWithProfile = new ArrayList<>(Arrays.asList("1080", "720", "480"));
 
 	@Override
 	public void executeWithDB(JobExecutionContext context) throws JobExecutionException {
diff --git a/src/main/java/org/olat/modules/vitero/manager/ViteroZombieSlayerJob.java b/src/main/java/org/olat/modules/vitero/manager/ViteroZombieSlayerJob.java
index 76da7125b6aa80f724bf9db89fe1201a08e1b120..9445b0dc4b6fc9922cd24e3b26d6dfcd1aacfbbd 100644
--- a/src/main/java/org/olat/modules/vitero/manager/ViteroZombieSlayerJob.java
+++ b/src/main/java/org/olat/modules/vitero/manager/ViteroZombieSlayerJob.java
@@ -22,6 +22,7 @@ package org.olat.modules.vitero.manager;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.modules.vitero.ViteroModule;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 
 /**
@@ -36,6 +37,7 @@ import org.quartz.JobExecutionContext;
  *
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  */
+@DisallowConcurrentExecution
 public class ViteroZombieSlayerJob extends JobWithDB  {
 
 	@Override
diff --git a/src/main/java/org/olat/portfolio/manager/EPDeadlineJob.java b/src/main/java/org/olat/portfolio/manager/EPDeadlineJob.java
index a58c8c503947e801a7212f8b2ebbd361cafa2906..e291e8fea2b591096f4e9d619e0b290163913b1a 100644
--- a/src/main/java/org/olat/portfolio/manager/EPDeadlineJob.java
+++ b/src/main/java/org/olat/portfolio/manager/EPDeadlineJob.java
@@ -20,8 +20,11 @@
 
 package org.olat.portfolio.manager;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 
 /**
@@ -33,10 +36,12 @@ import org.quartz.JobExecutionContext;
  * Initial Date:  12 nov. 2010 <br>
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  */
+@DisallowConcurrentExecution
 public class EPDeadlineJob  extends JobWithDB {
-	/**
-	 * @see org.olat.core.commons.services.scheduler.JobWithDB#executeWithDB(org.quartz.JobExecutionContext)
-	 */
+	
+	private static final Logger log = Tracing.createLoggerFor(EPDeadlineJob.class);
+	
+	@Override
 	public void executeWithDB(JobExecutionContext context) {
 		try {
 			log.info("Starting checking deadline of maps job");
diff --git a/src/main/java/org/olat/portfolio/manager/InvitationCleanupJob.java b/src/main/java/org/olat/portfolio/manager/InvitationCleanupJob.java
index bbcc1f0242eab397dc6b9b8cd250aab96f768e4a..411483cafd521a809992507650203133e78e6d8e 100644
--- a/src/main/java/org/olat/portfolio/manager/InvitationCleanupJob.java
+++ b/src/main/java/org/olat/portfolio/manager/InvitationCleanupJob.java
@@ -19,8 +19,11 @@
  */
 package org.olat.portfolio.manager;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 
 /**
@@ -31,11 +34,12 @@ import org.quartz.JobExecutionContext;
  * Initial Date:  11 nov. 2010 <br>
  * @author srosse
  */
+@DisallowConcurrentExecution
 public class InvitationCleanupJob extends JobWithDB {
 
-	/**
-	 * @see org.olat.core.commons.services.scheduler.JobWithDB#executeWithDB(org.quartz.JobExecutionContext)
-	 */
+	private static final Logger log = Tracing.createLoggerFor(InvitationCleanupJob.class);
+
+	@Override
 	public void executeWithDB(JobExecutionContext context) {
 		try {
 			log.info("Starting invitation clean up job");
diff --git a/src/main/java/org/olat/registration/TemporaryKeysCleanUpJob.java b/src/main/java/org/olat/registration/TemporaryKeysCleanUpJob.java
index f0a3a667280accfb77baae1f026818e33ed7ec2e..b6576e2b84daadb558cddf2da8d207efdedd8790 100644
--- a/src/main/java/org/olat/registration/TemporaryKeysCleanUpJob.java
+++ b/src/main/java/org/olat/registration/TemporaryKeysCleanUpJob.java
@@ -21,6 +21,7 @@ package org.olat.registration;
 
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -30,6 +31,7 @@ import org.quartz.JobExecutionException;
  * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class TemporaryKeysCleanUpJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/repository/manager/AutomaticLifecycleJob.java b/src/main/java/org/olat/repository/manager/AutomaticLifecycleJob.java
index 53170ecf6884365a310b61cd5d1e08a7e499e2fe..4105f112c409fce20d7e15e01b1183cc694ebb27 100644
--- a/src/main/java/org/olat/repository/manager/AutomaticLifecycleJob.java
+++ b/src/main/java/org/olat/repository/manager/AutomaticLifecycleJob.java
@@ -23,6 +23,7 @@ import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -32,6 +33,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class AutomaticLifecycleJob extends JobWithDB {
 	
 	private static final Logger logger = Tracing.createLoggerFor(AutomaticLifecycleJob.class);
diff --git a/src/main/java/org/olat/resource/accesscontrol/manager/ReservationsJob.java b/src/main/java/org/olat/resource/accesscontrol/manager/ReservationsJob.java
index dbf3eb7aa84524e399a814f4b35e74b07728c6a7..48e71b1840e6aa9d4bdea95f597b026ae3001ceb 100644
--- a/src/main/java/org/olat/resource/accesscontrol/manager/ReservationsJob.java
+++ b/src/main/java/org/olat/resource/accesscontrol/manager/ReservationsJob.java
@@ -22,6 +22,7 @@ package org.olat.resource.accesscontrol.manager;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.resource.accesscontrol.ACService;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -29,6 +30,7 @@ import org.quartz.JobExecutionException;
  * 
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  */
+@DisallowConcurrentExecution
 public class ReservationsJob extends JobWithDB {
 
 	@Override
diff --git a/src/main/java/org/olat/restapi/security/RestTokenJob.java b/src/main/java/org/olat/restapi/security/RestTokenJob.java
index a45196ff77e73e7670711fe095ee6f67a2c68eaf..6ffda66d6bf260566a67e6a4de09e59f189da371 100644
--- a/src/main/java/org/olat/restapi/security/RestTokenJob.java
+++ b/src/main/java/org/olat/restapi/security/RestTokenJob.java
@@ -19,9 +19,11 @@
  */
 package org.olat.restapi.security;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.core.logging.Tracing;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 
 /**
@@ -32,11 +34,12 @@ import org.quartz.JobExecutionContext;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class RestTokenJob extends JobWithDB {
+
+	private static final Logger log = Tracing.createLoggerFor(RestTokenJob.class);
 	
-	/**
-	 * @see org.olat.core.commons.services.scheduler.JobWithDB#executeWithDB(org.quartz.JobExecutionContext)
-	 */
+	@Override
 	public void executeWithDB(JobExecutionContext context) {
 		try {
 			log.info("Starting checking deadline of maps job");
diff --git a/src/main/java/org/olat/restapi/system/ProcSamplerJob.java b/src/main/java/org/olat/restapi/system/ProcSamplerJob.java
index 5f90ccfefe69c37f3f6fe6c7cd7a13a5f203d447..efdf2f1481eb6f7543881a0925e7f84623a84ca3 100644
--- a/src/main/java/org/olat/restapi/system/ProcSamplerJob.java
+++ b/src/main/java/org/olat/restapi/system/ProcSamplerJob.java
@@ -43,6 +43,7 @@ import org.olat.restapi.system.MonitoringService.Statistics;
 import org.olat.restapi.system.vo.SessionsVO;
 import org.olat.search.SearchServiceStatus;
 import org.olat.search.service.SearchServiceFactory;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.springframework.scheduling.quartz.QuartzJobBean;
 import org.w3c.dom.Document;
@@ -58,6 +59,7 @@ import net.fortuna.ical4j.util.TimeZones;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class ProcSamplerJob extends QuartzJobBean {
 
 	private static final Logger log = Tracing.createLoggerFor(ProcSamplerJob.class);
diff --git a/src/main/java/org/olat/restapi/system/SamplerJob.java b/src/main/java/org/olat/restapi/system/SamplerJob.java
index 7657ec18675be2d8d02bd4d88cced92be4f06eef..ddde6b56c268ee548f9c576970edfb21859d42fd 100644
--- a/src/main/java/org/olat/restapi/system/SamplerJob.java
+++ b/src/main/java/org/olat/restapi/system/SamplerJob.java
@@ -19,6 +19,7 @@
  */
 package org.olat.restapi.system;
 
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.springframework.scheduling.quartz.QuartzJobBean;
 
@@ -33,6 +34,7 @@ import org.springframework.scheduling.quartz.QuartzJobBean;
  * Initial Date:  21 feb. 2011 <br>
  * @author srosse, stephane.rosse@frentix.com, www.frentix.com
  */
+@DisallowConcurrentExecution
 public class SamplerJob extends QuartzJobBean {
 
 	@Override
diff --git a/src/main/java/org/olat/search/service/indexer/SearchIndexingJob.java b/src/main/java/org/olat/search/service/indexer/SearchIndexingJob.java
index bb5f85ce15ab5225c226b9cd46dac3a7862dcb65..cef5f14cc498801db5efb8c8cb0e43f6d77554e4 100644
--- a/src/main/java/org/olat/search/service/indexer/SearchIndexingJob.java
+++ b/src/main/java/org/olat/search/service/indexer/SearchIndexingJob.java
@@ -24,10 +24,13 @@
 */
 package org.olat.search.service.indexer;
 
+import org.apache.logging.log4j.Logger;
 import org.olat.core.commons.services.scheduler.JobWithDB;
+import org.olat.core.logging.Tracing;
 import org.olat.search.SearchService;
 import org.olat.search.service.SearchServiceFactory;
 import org.olat.search.service.SearchServiceImpl;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.InterruptableJob;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
@@ -41,12 +44,11 @@ import org.quartz.UnableToInterruptJobException;
  * Initial Date:  09.09.2008 <br>
  * @author Christian Guretzki
  */
+@DisallowConcurrentExecution
 public class SearchIndexingJob extends JobWithDB implements InterruptableJob {
 
-	/**
-	 * 
-	 * @see org.olat.core.commons.services.scheduler.JobWithDB#executeWithDB(org.quartz.JobExecutionContext)
-	 */
+	private static final Logger log = Tracing.createLoggerFor(SearchIndexingJob.class);
+
 	@Override
 	public void executeWithDB(JobExecutionContext arg0) throws JobExecutionException {
 		log.info("Search indexer started via cronjob.");
diff --git a/src/main/java/org/olat/user/manager/UserDataExportCleanJob.java b/src/main/java/org/olat/user/manager/UserDataExportCleanJob.java
index 135cffe774a46e5c89eb8d7e328975b6bcc8af28..78c3624c89471377428574c33d51140631792ca0 100644
--- a/src/main/java/org/olat/user/manager/UserDataExportCleanJob.java
+++ b/src/main/java/org/olat/user/manager/UserDataExportCleanJob.java
@@ -24,6 +24,7 @@ import java.util.Calendar;
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.services.scheduler.JobWithDB;
 import org.olat.user.UserDataExportService;
+import org.quartz.DisallowConcurrentExecution;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
@@ -33,6 +34,7 @@ import org.quartz.JobExecutionException;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
+@DisallowConcurrentExecution
 public class UserDataExportCleanJob extends JobWithDB {
 
 	@Override