IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 11317


Ignore:
Timestamp:
Jan 26, 2007, 10:10:40 AM (19 years ago)
Author:
eugene
Message:

fixed npending, active

Location:
trunk/Ohana/src/opihi/pantasks
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/opihi/pantasks/CheckTasks.c

    r11055 r11317  
    1616
    1717    /* need to check if the current time is within valid/invalid periods */
    18     if (!CheckTimeRanges (task[0].ranges, task[0].Nranges)) continue;
    19     if (task[0].Nmax && (task[0].Njobs >= task[0].Nmax)) continue;
    20     if (task[0].NpendingMax && (task[0].Npending >= task[0].NpendingMax)) continue;
     18    if (!CheckTimeRanges (task[0].ranges, task[0].Nranges)) {
     19        gettimeofday (&task[0].last, (void *) NULL);
     20        continue;
     21    }
     22    if (task[0].Nmax && (task[0].Njobs >= task[0].Nmax)) {
     23        gettimeofday (&task[0].last, (void *) NULL);
     24        continue;
     25    }
     26    if (task[0].NpendingMax && (task[0].Npending >= task[0].NpendingMax)) {
     27        gettimeofday (&task[0].last, (void *) NULL);
     28        continue;
     29    }
     30
     31    /* check if there are errors with this task */
     32    if (!ValidateTask (task, TRUE)) {
     33        gettimeofday (&task[0].last, (void *) NULL);
     34        continue;
     35    }
    2136
    2237    /* ready to run? : run task.exec macro */
    2338    if (task[0].exec != NULL) {
    2439      status = exec_loop (task[0].exec);
    25       if (!status) continue;
     40      if (!status) {
     41          gettimeofday (&task[0].last, (void *) NULL);
     42          continue;
     43      }
    2644    }
    27     if (!ValidateTask (task, TRUE)) continue;
    2845
    2946    /* construct job from task */
  • trunk/Ohana/src/opihi/pantasks/init.c

    r11084 r11317  
    55int task_host       PROTO((int, char **));
    66int task_nmax       PROTO((int, char **));
     7int task_npending   PROTO((int, char **));
    78int task_active     PROTO((int, char **));
    89int task_trange     PROTO((int, char **));
     
    2526
    2627static Command cmds[] = { 
    27   {"controller", controller,   "controller commands"},
    28   {"task",       task,         "define a schedulable task"},
    29   {"host",       task_host,    "define host machine for a task"},
    30   {"nmax",       task_nmax,    "define maximum number of jobs for a task"},
    31   {"active",     task_active,  "define maximum number of jobs for a task"},
    32   {"trange",     task_trange,  "define valid/invalid time periods for a task"},
    33   {"task.exit",  task_macros,  "define exit macros for a task"},
    34   {"task.exec",  task_macros,  "define pre-exec macro for a task"},
    35   {"command",    task_command, "define executed command for a task"},
    36   {"options",    task_options, "define optional variables associated with the job task"},
    37   {"periods",    task_periods, "define time scales for a task"},
    38   {"stdout",     task_stdout,  "define a file for the job stdout dump"},
    39   {"stderr",     task_stderr,  "define a file for the job stderr dump"},
    40   {"run",        run,          "run the scheduler"},
    41   {"stop",       stop,         "stop the scheduler (continue job harvesting)"},
    42   {"halt",       halt,         "halt the scheduler (no job harvesting)"},
    43   {"pulse",      pulse,        "set the scheduler update period"},
    44   {"status",     status_sys,   "get system status"},
    45   {"kill",       kill_job,     "kill job"},
    46   {"delete",     delete_job,   "delete job"},
    47   {"version",    version,      "show version information"},
    48   {"verbose",    verbose,      "set/toggle verbose mode"},
     28  {"controller", controller,    "controller commands"},
     29  {"task",       task,          "define a schedulable task"},
     30  {"host",       task_host,     "define host machine for a task"},
     31  {"nmax",       task_nmax,     "define maximum number of jobs for a task"},
     32  {"npending",   task_npending, "define maximum number of outstanding jobs for a task"},
     33  {"active",     task_active,   "set the active state of a task"},
     34  {"trange",     task_trange,   "define valid/invalid time periods for a task"},
     35  {"task.exit",  task_macros,   "define exit macros for a task"},
     36  {"task.exec",  task_macros,   "define pre-exec macro for a task"},
     37  {"command",    task_command,  "define executed command for a task"},
     38  {"options",    task_options,  "define optional variables associated with the job task"},
     39  {"periods",    task_periods,  "define time scales for a task"},
     40  {"stdout",     task_stdout,   "define a file for the job stdout dump"},
     41  {"stderr",     task_stderr,   "define a file for the job stderr dump"},
     42  {"run",        run,           "run the scheduler"},
     43  {"stop",       stop,          "stop the scheduler (continue job harvesting)"},
     44  {"halt",       halt,          "halt the scheduler (no job harvesting)"},
     45  {"pulse",      pulse,         "set the scheduler update period"},
     46  {"status",     status_sys,    "get system status"},
     47  {"kill",       kill_job,      "kill job"},
     48  {"delete",     delete_job,    "delete job"},
     49  {"version",    version,       "show version information"},
     50  {"verbose",    verbose,       "set/toggle verbose mode"},
    4951  {"ipptool2book", ipptool2book, "convert queue with ipptool output to book"},
    5052};
Note: See TracChangeset for help on using the changeset viewer.