RED-9250: Do not run any scheduled jobs in parallel #536

Merged
dominique.eiflaender1 merged 1 commits from RED-9250-4.0 into release/2.349.x 2024-06-11 10:52:02 +02:00
8 changed files with 16 additions and 0 deletions

View File

@ -5,6 +5,7 @@ import static com.iqser.red.service.persistence.management.v1.processor.utils.Te
import java.time.OffsetDateTime;
import java.util.Set;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
@ -27,6 +28,7 @@ import lombok.extern.slf4j.Slf4j;
@Service
@RequiredArgsConstructor
@FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE)
@DisallowConcurrentExecution
/*
* This Job checks if there might be a change in the analysis flags and then schedules a flag calculation using a queue to balance the load.
*/

View File

@ -5,6 +5,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.springframework.amqp.core.AmqpAdmin;
@ -28,6 +29,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@Service
@RequiredArgsConstructor
@DisallowConcurrentExecution
public class AutomaticAnalysisJob implements Job {
private final AmqpAdmin amqpAdmin;

View File

@ -3,6 +3,7 @@ package com.iqser.red.service.persistence.management.v1.processor.service.job;
import java.time.OffsetDateTime;
import java.util.List;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.springframework.stereotype.Service;
@ -22,6 +23,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@RequiredArgsConstructor
@Service
@DisallowConcurrentExecution
public class DeletedFilesCleanupJob implements Job {
private final DossierService dossierService;

View File

@ -4,6 +4,7 @@ import java.time.OffsetDateTime;
import java.time.temporal.ChronoUnit;
import java.util.List;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.springframework.stereotype.Service;
@ -22,6 +23,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@RequiredArgsConstructor
@Service
@DisallowConcurrentExecution
public class DownloadCleanupJob implements Job {
private final DownloadStatusPersistenceService downloadStatusPersistenceService;

View File

@ -12,6 +12,7 @@ import com.knecon.fforesight.tenantcommons.TenantProvider;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.springframework.stereotype.Service;
@ -19,6 +20,7 @@ import org.springframework.stereotype.Service;
@Slf4j
@RequiredArgsConstructor
@Service
@DisallowConcurrentExecution
public class DownloadReadyJob implements Job {
private final DownloadStatusPersistenceService downloadStatusPersistenceService;

View File

@ -1,5 +1,6 @@
package com.iqser.red.service.persistence.management.v1.processor.service.job;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
@ -13,6 +14,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@Service
@RequiredArgsConstructor
@DisallowConcurrentExecution
public class KeyCloakUserSyncJob implements Job {
private final KeyCloakUserSyncService keyCloakUserSyncService;

View File

@ -4,6 +4,7 @@ import java.time.DayOfWeek;
import java.time.OffsetDateTime;
import java.time.temporal.ChronoUnit;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.springframework.stereotype.Service;
@ -22,6 +23,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@RequiredArgsConstructor
@Service
@DisallowConcurrentExecution
public class SendNotificationEmailJob implements Job {
private final NotificationEmailService notificationEmailService;

View File

@ -2,6 +2,7 @@ package com.iqser.red.service.persistence.management.v1.processor.service.job;
import static com.iqser.red.service.persistence.management.v1.processor.utils.TenantUtils.isTenantReadyForPersistence;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
@ -17,6 +18,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@Service
@RequiredArgsConstructor
@DisallowConcurrentExecution
public class SyncUserPermissionsJob implements Job {
private final CustomPermissionService customPermissionService;