I'm currently running a test of one of SuggestBot's scripts and noticed that sometimes there has been two jobs running almost in parallel, which surprised me since I only have a single cron-job. Maybe there's an error in my setup that's causing this, or maybe it's just a glitch in the Matrix? Since I have no idea if it's the former, I'd be happy if someone had any idea about what's been causing this.
Here's the crontab entry from the submit server: 28 * * * * cronsub nettasks $HOME/SuggestBot/opentask/opentasks-nettrom.sh
So far there's been eight incidents of duplicate jobs: jobnumber 837874, qsub_time Tue Nov 27 21:28:02 2012 jobnumber 837876, qsub_time Tue Nov 27 21:28:03 2012
jobnumber 841731, qsub_time Wed Nov 28 13:28:01 2012 jobnumber 841734, qsub_time Wed Nov 28 13:28:03 2012
jobnumber 844796, qsub_time Thu Nov 29 01:28:01 2012 jobnumber 844797, qsub_time Thu Nov 29 01:28:02 2012
jobnumber 845829, qsub_time Thu Nov 29 05:28:01 2012 jobnumber 845830, qsub_time Thu Nov 29 05:28:01 2012
jobnumber 846093, qsub_time Thu Nov 29 06:28:01 2012 jobnumber 846095, qsub_time Thu Nov 29 06:28:03 2012
jobnumber 846351, qsub_time Thu Nov 29 07:28:01 2012 jobnumber 846354, qsub_time Thu Nov 29 07:28:03 2012
jobnumber 847126, qsub_time Thu Nov 29 10:28:02 2012 jobnumber 847128, qsub_time Thu Nov 29 10:28:03 2012
jobnumber 848150, qsub_time Thu Nov 29 14:28:01 2012 jobnumber 848151, qsub_time Thu Nov 29 14:28:02 2012
Here's the shell script that's launched by cron: nettrom@willow:~$ less SuggestBot/opentask/opentasks-nettrom.sh #!/bin/bash
# Name the job "opentasks". #$ -N nettasks
# Tell the server we'll be running for a maximum of 55 minutes (default is 6hrs) #$ -l h_rt=00:55:00
# Join STDERR and STDOUT #$ -j y
# Store output in a different place. #$ -o $HOME/SuggestBot/logs/opentasks-nettrom.log
# Ask for 256MB of memory #$ -l virtual_free=256M
# Need 1 SQL process on s1-rr for enwiki, and 1 SQL process on sql-user-n for logging #$ -l sql-s1-rr=1 #$ -l sql-user-n=1
# Until oursql is available on the Linux hosts, we have to restrict this to Solaris, # or rewrite it to use MySQLdb. #$ -l arch=sol
# Engage virtualenv source $HOME/env/default/bin/activate
# Make sure my local modules work export PYTHONPATH=$HOME/lib/python
# Post to my userspace with 5x oversampling, pointing to the right classifier host file python $HOME/SuggestBot/opentask/opentasks.py -o 5 --page="User:Nettrom/sandbox/opentask" -l en \ -f $HOME/SuggestBot/classifier/hostname.txt
Regards, Morten