Skip to content

Commit 615034e

Browse files
authored
Merge pull request #265 from jpwhite4/job_uniq
Add support for configurable job uniqueness.
2 parents ac1aba4 + deb7efd commit 615034e

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

src/supremm/xdmodaccount.py

+17-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,14 @@ def __init__(self, resource_id, config):
2424
SELECT
2525
jf.`job_id` AS `job_id`,
2626
jf.`resource_id` AS `resource_id`,
27-
COALESCE(jf.`local_job_id_raw`, jf.`local_jobid`) AS `local_job_id`,
27+
CASE
28+
WHEN jf.`local_job_id_raw` IS NULL THEN IF(jf.`local_job_array_index` = -1, jf.`local_jobid`, CONCAT(jf.`local_jobid`, '_', jf.`local_job_array_index`))
29+
WHEN sj.`source_format` = 'slurm' THEN jf.`local_job_id_raw`
30+
ELSE IF(jf.`local_job_array_index` = -1, jf.`local_jobid`, CONCAT(jf.`local_jobid`, '_', jf.`local_job_array_index`))
31+
END AS `job_uniq_id`,
32+
jf.`local_jobid` AS `local_job_id`,
33+
jf.`local_job_array_index` AS `local_job_array_index`,
34+
jf.`local_job_id_raw` AS `local_job_id_raw`,
2835
jf.`start_time_ts` AS `start_time`,
2936
jf.`end_time_ts` AS `end_time`,
3037
jf.`submit_time_ts` AS `submit`,
@@ -70,7 +77,14 @@ def __init__(self, resource_id, config):
7077
SELECT
7178
jf.`job_id` as `job_id`,
7279
jf.`resource_id` as `resource_id`,
73-
COALESCE(jf.`local_job_id_raw`, jf.`local_jobid`) as `local_job_id`,
80+
CASE
81+
WHEN jf.`local_job_id_raw` IS NULL THEN IF(jf.`local_job_array_index` = -1, jf.`local_jobid`, CONCAT(jf.`local_jobid`, '_', jf.`local_job_array_index`))
82+
WHEN sj.`source_format` = 'slurm' THEN jf.`local_job_id_raw`
83+
ELSE IF(jf.`local_job_array_index` = -1, jf.`local_jobid`, CONCAT(jf.`local_jobid`, '_', jf.`local_job_array_index`))
84+
END AS `job_uniq_id`,
85+
jf.`local_jobid` AS `local_job_id`,
86+
jf.`local_job_array_index` AS `local_job_array_index`,
87+
jf.`local_job_id_raw` AS `local_job_id_raw`,
7488
jf.`start_time_ts` as `start_time`,
7589
jf.`end_time_ts` as `end_time`,
7690
jf.`submit_time_ts` as `submit`,
@@ -280,7 +294,7 @@ def executequery(self, query, data):
280294
jobpk = record['job_id']
281295
del record['job_id']
282296
record['host_list'] = hostlist
283-
job = Job(jobpk, str(record['local_job_id']), record)
297+
job = Job(jobpk, str(record['job_uniq_id']), record)
284298
job.set_nodes(hostlist)
285299
job.set_rawarchives(hostarchives)
286300

0 commit comments

Comments
 (0)