Skip to content

Commit 5c6945b

Browse files
authored
BF: CS-910 updates of job priority and ticket values done by scheduler are not visible in qstat (#42)
* BF: CS-910 updates of job priority and ticket values done by scheduler are not visible in qstat // fixes sharetree and urgency-calculation tests * further missing events and issue numbers for @todo comments
1 parent 0b5577d commit 5c6945b

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

source/daemons/qmaster/sge_follow.cc

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -663,6 +663,7 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
663663
lSetPosDouble(jatp, ja_pos->JAT_prio_pos, 0);
664664
lSetPosDouble(jatp, ja_pos->JAT_ntix_pos, 0);
665665
if (task_number != 0) { /* if task_number == 0, we only change the */
666+
sge_add_event(0, sgeE_JATASK_MOD, job_number, task_number, nullptr, nullptr, nullptr, jatp, gdi_session);
666667
jatp = next_ja_task; /* pending tickets, otherwise all */
667668
next_ja_task = lNextRW(next_ja_task);
668669
} else {
@@ -686,6 +687,7 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
686687
lSetDouble(jatp, JAT_prio, 0);
687688
lSetDouble(jatp, JAT_ntix, 0);
688689
if (task_number != 0) { /* if task_number == 0, we only change the */
690+
sge_add_event(0, sgeE_JATASK_MOD, job_number, task_number, nullptr, nullptr, nullptr, jatp, gdi_session);
689691
jatp = next_ja_task; /* pending tickets, otherwise all */
690692
next_ja_task = lNextRW(next_ja_task);
691693
} else {
@@ -702,6 +704,8 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
702704
}
703705

704706
sge_mutex_unlock("follow_last_update_mutex", __func__, __LINE__, &Follow_Control.last_update_mutex);
707+
// @todo CS-913 we should have the tickets in sub-objects and have a ticket event having only the sub-object as data
708+
sge_add_event(0, sgeE_JOB_MOD, job_number, 0, nullptr, nullptr, nullptr, jep, gdi_session);
705709
}
706710
break;
707711

@@ -794,6 +798,7 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
794798
lSetPosDouble(jatp, ja_pos->JAT_prio_pos, lGetPosDouble(joker_task, order_ja_pos->JAT_prio_pos));
795799
lSetPosDouble(jatp, ja_pos->JAT_ntix_pos, lGetPosDouble(joker_task, order_ja_pos->JAT_ntix_pos));
796800

801+
// @todo do we really update the *job* values with every ja_task update?
797802
lSetPosDouble(jep, job_pos->JB_nppri_pos, lGetPosDouble(joker, order_job_pos->JB_nppri_pos));
798803
lSetPosDouble(jep, job_pos->JB_nurg_pos, lGetPosDouble(joker, order_job_pos->JB_nurg_pos));
799804
lSetPosDouble(jep, job_pos->JB_urg_pos, lGetPosDouble(joker, order_job_pos->JB_urg_pos));
@@ -803,6 +808,8 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
803808
}
804809

805810
sge_mutex_unlock("follow_last_update_mutex", __func__, __LINE__, &Follow_Control.last_update_mutex);
811+
sge_add_event(0, sgeE_JATASK_MOD, job_number, task_number, nullptr, nullptr, nullptr, jatp, gdi_session);
812+
sge_add_event(0, sgeE_JOB_MOD, job_number, 0, nullptr, nullptr, nullptr, jep, gdi_session);
806813

807814
#if 0
808815
DPRINTF(("PRIORITY: " sge_u32"." sge_u32" %f/%f tix/ntix %f npri %f/%f urg/nurg %f prio\n",
@@ -821,9 +828,9 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
821828

822829

823830
/* -----------------------------------------------------------------------
824-
* CHANGE TICKETS OF RUNNING/TRANSFERING JOBS
831+
* CHANGE TICKETS OF RUNNING/TRANSFERRING JOBS
825832
*
826-
* Our aim is to collect all ticket orders of an gdi request
833+
* Our aim is to collect all ticket orders of a gdi request
827834
* and to send ONE packet to each exec host. Here we just
828835
* check the orders for consistency. They get forwarded to
829836
* execd having checked all orders.
@@ -1006,6 +1013,8 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
10061013
sge_free(&rdp);
10071014
}
10081015
}
1016+
sge_add_event(0, sgeE_JATASK_MOD, job_number, task_number, nullptr, nullptr, nullptr, jatp, gdi_session);
1017+
sge_add_event(0, sgeE_JOB_MOD, job_number, 0, nullptr, nullptr, nullptr, jep, gdi_session);
10091018
}
10101019
break;
10111020

@@ -1382,7 +1391,7 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
13821391
break;
13831392

13841393
/* -----------------------------------------------------------------------
1385-
* FILL IN SEVERAL SCHEDULING VALUES INTO QMASTERS SHARE TREE
1394+
* FILL IN SEVERAL SCHEDULING VALUES INTO QMASTER'S SHARE TREE
13861395
* TO BE DISPLAYED BY QMON AND OTHER CLIENTS
13871396
* ----------------------------------------------------------------------- */
13881397
case ORT_share_tree: {
@@ -1394,6 +1403,7 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
13941403
DPRINTF("ORDER: ORT_share_tree failed\n");
13951404
DRETURN(-1);
13961405
}
1406+
// @todo CS-911 don't we have to send an event here?
13971407
}
13981408
break;
13991409

@@ -1413,6 +1423,7 @@ sge_follow_order(lListElem *ep, char *ruser, char *rhost, lList **topp, monitori
14131423
}
14141424
}
14151425
/* no need to spool sched conf */
1426+
// @todo CS-912 don't we have to send an event here?
14161427
}
14171428

14181429
break;

0 commit comments

Comments
 (0)