[torquedev] Setting extra_resc causes problem
Al Taufer
ataufer at clusterresources.com
Wed Jun 17 17:47:16 MDT 2009
There seems to be a problem with both the 2.3 and trunk branches. It seems like the resource_list can get messed up for jobs. The scenario is as follows:
echo "sleep 30" | qsub -l walltime=33:33:33
qmgr -c 's s extra_resc = garbage'
echo "sleep 30" | qsub -l walltime=33:33:33
The first job gets the correct walltime while the second job does not. The problem seems to be that setting the extra_resc calls init_resc_defs() which recreates the svr_resc_def values. This prevents chk_svr_resc_limit() from matching up the resources.
The fix seems to be in attr_fn_resc.c function find_resc_entry(). If we change the following line from:
if (pr->rs_defin == rscdf)
to:
if (!strcmp(pr->rs_defin->rs_name, rscdf->rs_name))
then it seems to work fine.
Is there some reason we are checking to see if the rs_defin points to the same place as rscdf instead of just comparing the rs_name?
Al Taufer
Cluster Resources, Inc.
More information about the torquedev
mailing list