touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #27822
[Bug 917231] Re: Mutual exclusion for cronjobs
While an interesting concept, I believe cron is the wrong tool for this
job. Fixing this in cron would not ensure mutual exclusion in the cases
where these scripts are called by other means, eg manual calls.
The correct solution for backup_to_media and backup_to_file -- or any
other program that needs to ensure mutual exclusion -- would be to
create and flock a file, eg /var/lock/backup_run.
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to cron in Ubuntu.
https://bugs.launchpad.net/bugs/917231
Title:
Mutual exclusion for cronjobs
Status in “cron” package in Ubuntu:
New
Bug description:
I'm using Ubuntu 12.04 dev with cron 3.0pl1-120ubuntu2. I encountered
in the past a problem which can be solved with a new feature. Here is
an example of the problem:
0 0 * * * root /usr/local/share/python/backup_to_media.py
0 0 1 * * root /usr/local/share/python/backup_to_internet.py
These cronjobs do backup some data every day to a media and one time a
month to the internet. The problem is on the first day of every month
both backups are running at the same time. This can cause some
problems like the backuped data to the internet is one day older as it
should be or there are maybe exceptions because both jobs are
accessing the files at the same time.
Maybe there could be a priority column which controls this:
0 0 * * * root 0 /usr/local/share/python/backup_to_media.py
0 0 1 * * root 1 /usr/local/share/python/backup_to_internet.py
The priority column ensures that jobs which are running at the same
time are excuted sequentially (if the priority of every job is the
same number we will have the current behaviour). On the first day of
every month /usr/local/share/python/backup_to_media.py is executed
first because it has a lower number and if it finishes
/usr/local/share/python/backup_to_internet.py is executed.
This would prevent complicated entries in the crontab or own complex
mutual exclusion to solve this problem.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cron/+bug/917231/+subscriptions