Skip to content

Commit cd86cd1

Browse files
Fix Scheduler Start (#26546)
Co-authored-by: Aniket Katkar <aniketkatkar97@gmail.com> (cherry picked from commit feae1d4)
1 parent ca2e015 commit cd86cd1

2 files changed

Lines changed: 11 additions & 1 deletion

File tree

openmetadata-service/src/main/java/org/openmetadata/service/OpenMetadataApplication.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -996,6 +996,15 @@ private void registerResources(
996996
authorizer,
997997
SecurityConfigurationManager.getInstance().getAuthenticatorHandler(),
998998
limits);
999+
1000+
// Start the Quartz scheduler after all resources are initialized to avoid race conditions
1001+
// where stale triggers fire before entity repositories have seeded their data
1002+
try {
1003+
AppScheduler.getInstance().start();
1004+
} catch (SchedulerException e) {
1005+
LOG.error("Failed to start AppScheduler", e);
1006+
}
1007+
9991008
environment.jersey().register(new AuditLogResource(authorizer, auditLogRepository));
10001009
environment.jersey().register(new DiagnosticsResource(authorizer));
10011010
environment.jersey().register(new JsonPatchProvider());

openmetadata-service/src/main/java/org/openmetadata/service/apps/scheduler/AppScheduler.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,8 +107,9 @@ private AppScheduler(
107107
Executors.newScheduledThreadPool(
108108
1, Thread.ofPlatform().name("om-app-error-trigger-reset").factory());
109109
threadScheduler.scheduleAtFixedRate(this::resetErrorTriggers, 0, 24, TimeUnit.HOURS);
110+
}
110111

111-
// Start Scheduler
112+
public void start() throws SchedulerException {
112113
this.scheduler.start();
113114
}
114115

0 commit comments

Comments
 (0)