WebJob Runs Twice per each cron Schedule - azure-webjobs

I have a WebJob with the following cron
{"schedule": "0 0 * * * *"}
My logging and the logs from Kudu {site...}/azurejobs/#/jobs/triggered/{jobName} shows 2 successive entries running every hour within a minute of each other. The App Service plan is set to single instance.
How can I determine why I get 2 executions per scheduled event?

The only thing I can think of is that if you set up the Azure Scheduler in addition to the Kudu CRON file, they will each fire and cause a double invocation.
Any chance that you set up a schedule using VS? That would set up the Azure Scheduler. If so, you can delete the unwanted scheduler Job Collection.
Also, using Kudu Console, go under D:\home\data\jobs\triggered{jobname} and look at job_scheduler.log. That should only account for the Kudu cron scheduler.

Related

What is valid cron on GCP Cloud Scheduler?

I have a Cloud Scheduler running on GCP and I would like to run with 2/5 * * * 1-5. This does not really work, it is instead just triggered once per hour, at 4 minutes past the hour for some reason. I know this is non-standard cron but at the same time neither the console or SDK complain about it.
I wonder what is valid cron for the Cloud Scheduler?
Is there any way to do what I wish, running it every five minutes after 2 past, i.e. HH:02, HH:07, HH:12 etc.?
In short; I simply messed up the cron timing. It works as it should with 2-59/5 * * * 1-5. This format follows the cron-standard.

Serializing DAG into DB on Demand in Airflow 2.0

We are currently deploying flows on runtime using Airflow and face constant issues in terms of DAG deployment . The DAGs doesnt get picked by Scheduler on time and delays the user response in our workflow application .
Is their any way we can deploy DAGs into database of airflow ON DEMAND
? If not how can we make this process well defined .
Each DAG file is parsed every 30 seconds by default from Airflow 2.0.1.
This is controlled by https://airflow.apache.org/docs/apache-airflow/stable/configurations-ref.html#min-file-process-interval
Change that to 2 seconds or whatever number of seconds you think is appropriate for your case.

Amazon EMR: Only start new scheduled job if previous job has finished

I have a AWS EMR cluster job which runs every 2 hours. I have set up a schedule using cloudWatch job to run every two hours.
But sometimes the next job (which runs after 2 hour from previous one) starts when previous one is not finished as it sometimes take more than 2 hours to completed depending on data to be processed.
I need some configuration by which I could prevent next job to be started if previous job is running.
I tried but couldn't found any set up. Can anyone knows how to do that please?
Add them as EMR steps. EMR steps run sequentially by default(Unless you change the concurrency setting)

Do I need "RunAndBlock" for scheduled web jobs?

My intention is to run a 3 second web job every 5 min. What happens if I skip the host.RunAndBlock?
If you just want a simple time scheduled job, there is no need to use the WebJobs SDK at all, so there is no host at all. Just use a plain console app (can be as simple as a one line Main), and deploy it as a scheduled CRON WebJobs. See https://learn.microsoft.com/en-us/azure/app-service/web-sites-create-web-jobs.

schadule task in DSS 3.5 for DSS project box car

I created a Data service project and enabled Boxcar for running 5 queries sequentially.
after deploying service, I need to use schedule task for running it every 5 minutes. in schedule task, I selected _request_box operation(It was created by DSS boxcar) but it doesn't work. how can i use task schedule with boxcarring?
Thank you
When a task is scheduled the operation should be a parameter-less operation. As request_box consists of several other operations, this scenario will not work as a normal operation. I have added a JIRA to report this scenario and you can track the progress from there.