Expand my Community achievements bar.

Guidelines for the Responsible Use of Generative AI in the Experience Cloud Community.
SOLVED

Duplicate Scheduler Service is running on AEM Cloud

Avatar

Level 2

I have created a scheduler which looks for the assets that are expiring in upcoming 5 days and then it triggers an email to the owner of the asset to provide update about its expiration.

Issue in the service is that scheduler is getting activated twice and as it runs twice so email is also triggered twice to the owner of the asset.

I checked about it and found that it may occur if there is a cluster of AEM instance as the scheduler will be running on all instances, so I used the onSingleInstanceOnly(java.lang.String[] slingIds) method to register the scheduler only once. It worked after this change but now after few days again I am receiving the email twice. In the logs again I can see that scheduler is getting registered twice.

 

Please suggest any solution about it.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hi @ankush_sood_ 

  Did you try setting job scheduling on leader only?

e.g  

 

@Property(name="scheduler.runOn", value="LEADER");

Or

 

@Property (name="scheduler.runOn", value="SINGLE")

Thanks

Dipti

View solution in original post

4 Replies

Avatar

Correct answer by
Community Advisor

Hi @ankush_sood_ 

  Did you try setting job scheduling on leader only?

e.g  

 

@Property(name="scheduler.runOn", value="LEADER");

Or

 

@Property (name="scheduler.runOn", value="SINGLE")

Thanks

Dipti

Avatar

Level 2

Hi Dipti,

 

yes i have tried this.

This property 

@Property (name="scheduler.runOn", value="SINGLE")

is similar to 

scheduleOptions.onSingleInstanceOnly(true);

 here is the URL of Page  where the method details are mentioned. maybe I can try changing it and use it the way you are saying.

 

Thanks,

Ankush Sood

Avatar

Community Advisor

@Dipti_Chauhan , I'm also facing the same issue.

 

I have a query. If we are having multiple instances running with in the cluster, When we set the above mentioned property will the scheduler executed on other instances or not.

 

If not how the changes will be reflected on other instances. Please confirm.

Avatar

Level 2

Hey, I had to convert it to a Sling Scheduler Job from Sling Commons scheduler service to make it work acc. to adobe recommendations.

https://sling.apache.org/documentation/bundles/apache-sling-eventing-and-job-handling.html