Hi, I cannot remember, what was the person name who made a comment during the DRMAA PR doc public review process that DRMAA doc is the most boring document he has ever read. Boring documents like DRMAA spec can make it very difficult to spot obvious omissions, like the one that we have just discovered. To be more precise, drmaa_wait routine is missing a second, OUT job_id parameter in its signature, even though the parameter is listed in the parameter list description. This is the first draft when the second job_id was introduced, doc DRMAA-1.11.pdf: ----- drmaa_wait(job_id, stat, timeout, rusage, drmaa_errno_buf) IN job_id /* job identifier (string) or DRMAA_JOB_IDS_SESSION_ANY (string) */ OUT job_id /* job identifier of termineted job (string) or NULL */ OUT stat /* status code of job (integer) */ IN timeout / * how long we block in this call (signed long) */ OUT rusage /* resource usage */ This routine waits for a job with job_id to fail or finish execution. Passing a special string DRMAA_JOB_IDS_SESSION_ANY instead job_id waits for any job. If such a job was successfully waited its job_id is returned as a second parameter. This routine is modeled on wait3 POSIX routine. ---------------------- which establishes that the group meant to change the routine signature. Future revisions modified this text and dropped the second parameter reference, but kept the separate job_id entry as an OUT parameter. I am also attaching the preceding version doc, file DRMAA-1.10.pdf. The change was made in the C bindings document which was the basis for the DRMAA implementations, so drama.h and the actual API have the right signatures. The DRMAA PR doc has been changed properly to incorporate job_id_out parameter in response to Tracker 1040: https://forge.gridforum.org/tracker/?func=detail&atid=507&aid=1400&group _id=69 Regards Hrabri
participants (1)
-
Rajic, Hrabri