PP-289: unique job ids up to 1 trillion
PBS Pro Community Forum Link: http://community.pbspro.org/t/pp-289-unique-job-ids-up-to-1-trillion/465
- PP-289Getting issue details... STATUS
Currently the largest possible Job ID which PBS can hold is "9999999". Which is a bit low for sites submitting lot of jobs. With new enhancement the largest possible Job ID that PBS would now hold will be "999999999999". Thus the range will be (0 to 999999999999) with a total of 1 trillion unique job IDs.
Interface 1: max_job_sequence_id server attribute
- Visibility: Public
- Change Control: Stable
- Details: Using this attribute admin can change max job sequence id in the server. Once max job sequence id reaches to the max value(999999999999) then server will rollback the job sequence id to 0 (i.e next job or reservation id). If the max_job_sequence_id is set to something smaller than current max_job_sequence_id then it will wrap to 0(ZERO).
- Default value of the attribute will be 9999999.
- Max value for the attribute is "999999999999"
- Min value for the attribute is "9999999"
- max_job_sequence_id attribute value can be anything between 9999999 to 999999999999 only.
- Log/Error messages:
- When non privileged user try to set max_job_sequence_id then following error message will be displayed by qmgr:
- qmgr obj= svr=default: Unauthorized Request
qmgr: Error (15007) returned from server
- qmgr obj= svr=default: Unauthorized Request
- When admin try to set invalid value for max_job_sequence_id then following error message will be displayed by qmgr:
qmgr obj= svr=default: Cannot set max_job_sequence_id < 9999999, or > 999999999999
qmgr: Error (15225) returned from server
- Following log message will be added to server logs when admin sets max_job_sequence_id:
- Log event: PBSEVENT_ADMIN
- Log level: LOG_NOTICE
- Log message:svr_max_job_sequence_id set to val <value>
- Following log message will be added to server logs when admin unset max_job_sequence_id:
- Log event: PBSEVENT_ADMIN
- Log level: LOG_NOTICE
- Log message:svr_max_job_sequence_id reverting back to default val <value>
- When non privileged user try to set max_job_sequence_id then following error message will be displayed by qmgr:
Interface 2: qstat output
- Visibility: Public
- Change Control: Stable
- Details: As PBS_MAXSEQNUM changed from 7 to 12 to support 1 trillion sequence id, so if the max_job_sequence_id set to something greater than the default(9999999) value then qstat header width (like qstat -n/-s/-st etc) will change and for default width will not change means, it will remain same as now. There is no effect on qstat wide formats which means whether you would increase or decrease the max_job_sequence_id value these widths will remain same as now.
Example: Given below an example in which we can see the change in qstat output format:
Previous Output: If max job id is "9999999" and server name is "servername-cent7" then output displays in Job id column like 9999999.servernam
New Output: Now, if max job id is increased to something greater than "9999999" like set to higher limit "999999999999" then output would be like 999999999999.servernam
Note: Increased the width of Job Id column(from 17 to 22 characters) only.
Interface 3: pbs_rstat output
- Visibility: Public
- Change Control: Stable
- Details: As PBS_MAXSEQNUM increased from 7 to 12, so pbs_rstat output header will also get change in case of increasing the max_job_sequence_id from default else same as now.
Given below the output of pbs_rstat command
Example: Given below an example in which we can see the change in pbs_rstat output format:
Previous Output: If max reservation id is "9999999" and server name is "servername-cent7" then output displays like:
Resv ID | Queue |
---|---|
R9999999.s | R9999999 |
New Output: Now, if column width is increased to 15(Resv ID) and 13(Queue) and max reservation id also increased to higher limit "999999999999" then output would be like:
Resv ID | Queue |
---|---|
R999999999999.s | R999999999999 |
Note: Increased the column width of "Resv ID" (from 10 to 15)and "Queue"(from 8 to 13) only
Limitation: With this implementation the maximum length of Job name (PBS_MAXJOBNAME) will be limited to 230 character wide.