pbs_statjob(3B)

πŸ“¦ version 6.1.3, in epel 9, nixos 26.05, nixpkgs unstable

πŸ’– NAME πŸ’–

okay so this is pbs_statjob(3B) β€” yes, from the PBS manual, section 3B β€” and it is literally the function that goes β€œhey server, what’s the status of these batch jobs?” πŸ’…

pbs_statjob β€” obtain status of pbs batch jobs.


✨ SYNOPSIS ✨

#include <pbs_error.h>
#include <pbs_ifl.h>

struct batch_status *pbs_statjob(int connect, char *id,
struct attrl *attrib, char *extend)

void pbs_statfree(struct batch_status *psj)

πŸ¦‹ DESCRIPTION πŸ¦‹

So you issue a batch request to obtain the status of a specified batch job or a set of jobs at a destination. It’s giving β€œstatus check, but make it batch.” πŸ‘‘

A Status Job batch request gets generated and sent to the server over the connection specified by connect, which is the return value of pbs_connect(). That connection is your little hotline to the batch server, bestie. ☎️

The parameter id may be either a job identifier or a destination identifier. Two paths, one parameter β€” main character energy fr fr.

If id is a job identifier, it is the identifier of the job for which status is requested. It is specified in the form:

sequence_number.server

If id is a destination identifier, it specifies that status of all jobs at the destination (queue) which the user is authorized to see be returned. If id is the null pointer or a null string, the status of each job at the server which the user is authorized to see is returned. No cap, that’s the whole β€œshow me everything I’m allowed to see” vibe. πŸ‘€

The parameter attrib is a pointer to an attrl structure which is defined in pbs_ifl.h as:

struct attrl {
    struct attrl *next;
    char         *name;
    char         *resource;
    char         *value;
};

The attrib list is terminated by the first entry where next is a null pointer. If attrib is given, then only the attributes in the list are returned by the server. Otherwise, all the attributes of a job are returned. When an attrib list is specified, the name member is a pointer to a attribute name as listed in pbs_alter(3) and pbs_submit(3). The resource member is only used if the name member is ATTR_l β€” otherwise it should be a pointer to a null string. The value member should always be a pointer to a null string. Yes, always. That’s the rule. πŸŽ€

The parameter extend is reserved for implementation defined extensions. TORQUE 2.0.0p1 added the #define'd constant string EXECQUEONLY to only retrieve jobs in execution queues. So if you see EXECQUEONLY, that’s what it’s doing β€” execution queues only, periodt. πŸ”₯

The return value is a pointer to a list of batch_status structures or the null pointer if no jobs can be queried for status. The batch_status structure is defined in pbs_ifl.h as:

struct batch_status {
    struct batch_status *next;
    char                *name;
    struct attrl        *attribs;
    char                *text;
}

It is up the user to free the structure when no longer needed, by calling pbs_statfree(). That’s your cleanup era β€” do not skip it, bestie. πŸ§ΉπŸ’–


🌈 SEE ALSO 🌈

  • qstat(1B)
  • pbs_connect(3B)

πŸ’€ DIAGNOSTICS πŸ’€

When the batch request generated by pbs_statjob() function has been completed successfully and the status of each job has been returned by the batch server, the routine will return a pointer to the list of batch_status structures.

If no jobs were available to query or an error occurred, a null pointer is returned. The global integer pbs_errno should be examined to determine the cause. That’s your little clue bucket β€” check pbs_errno and find out what went sideways. πŸ•΅οΈβ€β™€οΈβœ¨


okay bestie, that’s the whole page. The very last line is the footer, and it’s just Local plus the page name pbs_statjob(3B) β€” no extra date drama, no secret version lore. We love a low-key footer. πŸ«ΆπŸ’–

πŸ“¦ where this page comes from