IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jun 12, 2008, 12:52:06 PM (18 years ago)
Author:
eugene
Message:

use virtual stacks for host and job queries by user thread

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/opihi/pcontrol/check.c

    r11388 r18098  
    33int check (int argc, char **argv) {
    44
    5   Job *job;
    6   Host *host;
    7   int JobID, HostID, StackID;
     5  int JobID, HostID;
     6
     7  Stack *stack = NULL;
     8  Job *job = NULL;
     9  Host *host = NULL;
    810
    911  if (argc != 3) {
     
    1416
    1517  if (!strcasecmp (argv[1], "JOB")) {
    16     JobID = atoi (argv[2]);
     18    JobID = GetID (argv[2]);
     19    if (!JobID) {
     20      gprint (GP_ERR, "invalid job id %s\n", argv[2]);
     21      return (FALSE);
     22    }
    1723
    18     SetCheckPoint ();  // ensure the JOB is on one of the stacks
    19     job = PullJobByID (JobID, &StackID);
     24    stack = GetJobStack (PCONTROL_JOB_ALLJOBS);
     25    job = PullStackByID (stack, JobID);
    2026    if (job == NULL) {
    2127      gprint (GP_LOG, "job not found\n");
    22       ClearCheckPoint ();
    2328      return (FALSE);
    2429    }
    25     gprint (GP_LOG, "STATUS %s\n", GetJobStackName(StackID));
     30
     31    gprint (GP_LOG, "STATUS %s\n", GetJobStackName(job[0].stack));
    2632    gprint (GP_LOG, "EXITST %d\n", job[0].exit_status);
    2733    gprint (GP_LOG, "STDOUT %d\n", job[0].stdout_size);
     
    3339        gprint (GP_LOG, "HOSTNAME NONE\n");
    3440    }
    35     PutJob (job, StackID, STACK_BOTTOM);
    36     ClearCheckPoint ();
     41    PushStack (stack, STACK_BOTTOM, job, job[0].JobID, job[0].argv[0]);
    3742    return (TRUE);
    3843  }
     
    4146    HostID = atoi (argv[2]);
    4247
    43     SetCheckPoint ();  // ensure the HOST is on one of the stacks
    44     host = PullHostByID (HostID, &StackID);
     48    stack = GetHostStack (PCONTROL_HOST_ALLHOSTS);
     49    host = PullStackByID (stack, HostID);
    4550    if (host == NULL) {
    4651      gprint (GP_LOG, "host not found\n");
    47       ClearCheckPoint ();
    4852      return (FALSE);
    4953    }
    50     gprint (GP_LOG, "host %s\n", GetHostStackName(StackID));
    51     PutHost (host, StackID, STACK_BOTTOM);
    52     ClearCheckPoint ();
     54    gprint (GP_LOG, "host %s\n", GetHostStackName(host[0].stack));
     55    PushStack (stack, STACK_BOTTOM, host, host[0].HostID, host[0].hostname);
    5356    return (TRUE);
    5457  }
Note: See TracChangeset for help on using the changeset viewer.